我无法理解以下C程序的输出,有什么想法吗?这一计划的无法理解以下C语言程序的输出
#include<stdio.h>
#include<conio.h>
void main()
{
int a=5,b=6,c=11;
clrscr();
printf("%d %d %d");
getch();
}
输出是:
我不明白为什么上面的程序给我们的printf我从未宣布过反向的变量值,其值必须打印...所以有什么理论,如果我们没有宣布哪个变量必须打印,那么我们得到的变量的数据类型的上面声明的反向值...
看起来像我未定义的行为,换句话说,纯粹的运气,它打印甚至远程相关的东西。 –
这是未定义的行为,我确定在某处存在重复。 –
使用另一个编译器试一下,你会得到随机结果(例如clang或gcc) – Geoffroy