1.若有声明“char a[3]="AB"; char *p=a;”,执行语句“printf("%d",p[2]);”后输出结果是
输出是0,因为数组赋值后,最后一个元素系统会自动赋值结束符'\0',
p指向数组a的首地址,p[2]等价于a[2],a[3]="AB"的第三个字符是\0,\0的ASCII码值是0,所以最后输出的是0
p是个指向a的指针p[2]就是a[2]那a[2]为什么是0呢a[0]='A'a[1]='B'a[2]=0这是字符串基本概念,以\0结尾