先上例题
1、“`
char *p={
“how are you”,
“hello”,
“what’s your name”};
这里p的类型不是char*,而是char * *
2、```
char a[20]="my name is Jang"
char *p=a;
char** q=&p;
printf("%p",**q);
q++;
printf("%p",**q);
正确输出:第一个m
第二个无意义
其中第一个一般没问题,重点看第二个。第二个输出的常见错误有两个:
错误一:输出y,认为q指向char类型,q++后,后移一个字节,指向y
错误二:输出m,认为q指向ch