printf函数接受一个参数类型,例如%d或%i为带符号的整型。然而,我没有看到任何长值。
当前回答
我认为明确地回答这个问题需要知道编译器的名称和版本,以及它正在编译的平台(CPU类型,操作系统等)。
其他回答
这取决于,如果你指的是无符号长,格式化字符是“%lu”。如果您指的是带符号的长字符,则格式化字符为“%ld”。
我认为明确地回答这个问题需要知道编译器的名称和版本,以及它正在编译的平台(CPU类型,操作系统等)。
把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