printf函数接受一个参数类型,例如%d或%i为带符号的整型。然而,我没有看到任何长值。


当前回答

我需要打印unsigned long long,所以我找到了这个作品:

unsigned long long n;
printf("%llu", n);

对于所有其他组合,我相信您使用printf手册中的表,为您试图打印的任何类型取行,然后列标签(就像我上面对printf("%llu", n)所做的那样)。

其他回答

这取决于,如果你指的是无符号长,格式化字符是“%lu”。如果您指的是带符号的长字符,则格式化字符为“%ld”。

把l(小写字母l)直接放在说明符前面。

unsigned long n;
long m;

printf("%lu %ld", n, m);

%ld见printf参考cplusplus.com

我想你的意思是:

unsigned long n;
printf("%lu", n);   // unsigned long

or

long n;
printf("%ld", n);   // signed long

我需要打印unsigned long long,所以我找到了这个作品:

unsigned long long n;
printf("%llu", n);

对于所有其他组合,我相信您使用printf手册中的表,为您试图打印的任何类型取行,然后列标签(就像我上面对printf("%llu", n)所做的那样)。