(1)*p!="\0"与(2)**p!='\0'这种现象如何理解?
我在visual c++6.0下运行这两个程序
结果一样,不知如何解释?
(1)
#include <stdio.h>
int main()
{
int i;
char a[][20]={"good","bat",""};
char (*p)[20];
for (p=a,i=0;*p!="\0",i<3;i++,p++)
printf("%s\n",*p);
}
(2)
#include <stdio.h>
int main()
{ char a[][20]={"good","bat",""};
char (*p)[20];
for (p=a;**p!='\0';p++)
printf("%s\n",*p);
}
(1)和(2)结果一样
(1)*p!="\0"与(2)**p!='\0'这种现象如何理解?