〖讨论〗讨论下代码
#include <stdio.h>void main()
{
int a,b;
b=4;
printf("%d",a[-1]);
}
该代码会不会编译通过,如果可以,那么输出结果是什么?
对于这种代码!delphi同样存在这个问题!有意思!
================================================
#include <stdio.h>
void main()
{
int b,a;
b=4;
printf("%d",a[-1]);
}
该代码会不会编译通过,如果可以,那么输出结果是什么? 应该会报错,呵呵 C语言一般编译是不会报错,但输出的结果就不一定了。取出的a[-1]是a之前的两个字节内存中的内容。不过像这种代码,如果改成:
void main()
{
int b,a;
b=4;
printf("%d",a);
}
是可以得到b的值4的。 我估计你的意思是这个:
void main()
{
int a,b;
a=4;
printf("%d",b[-1]);
}
这样也是可以输出a的值4
页:
[1]