在C51里 int* br = NULL main() { int* test1; int* test2 = NULL; test1 = br;
if(test1) printf("test1
");
if(test2) printf("test2
"); } 1)我理解test1和test2都是空指针,可是为什么会输出test1,而不输出test2?
在PC机上的Turbo C环境test1和test2都不会输出。
2)可是在C51和TC里,对NULL的定义也没有什么不同,为什么会输出不一样?
3)在C51里里,对指针有效性的判断,应该怎么判断呢?
|