#include <stdio.h>
int main() {
int i=10;//以十进制的格式输出
int k=5;
printf("%lld %lld\n",i,k);//d是十进制,是把10的二进制代码放进去了
return 0;
}
这段代码定义了两个整数变量 i 和 k,然后尝试用 printf 输出它们。但输出格式说明符 %lld 与变量类型不匹配,导致结果可能不正确。
- 变量 i 和 k 是 int 类型,但 %lld 是用于 long long 类型的格式说明符。这会导致 printf 从内存中读取比实际变量更多的字节,输出错误的值。
- 注释中提到“以十进制的格式输出”,但 %lld 并不是 int 的标准十进制格式说明符。对于 int 类型,应该使用 %d。