下面代码的红色区域 如果换成*p=c;程序就正确,如果换成 p = &c;,程序就错误,这是为什么啊 #include<stdio.h> #include<stdlib.h> char a = 'A'; char b = 'B'; char c = 'C'; void changep(char *p) { // *p=c; p = &c; // } void changepp(char **p) { *p = &c; //*p 对称 char * } void main() { char *p = &a; p = &b; printf("我的级别是%c", *p); changep(p); printf("\n我的级别是%c", *p); system("pause"); } |
Jr_711 发表于 2014-9-3 11:33
是报错还是结果不一样呢?
能把错误发出来吗?都是自学的,一起研究下
我感觉应该是打印结果不一样,是不是 ...
四季列车 发表于 2014-9-3 18:31
嗯嗯,是这样的
1.png (6.61 KB, 下载次数: 35)
*p=c;时
2_副本.png (7.62 KB, 下载次数: 77)
p = &c;时
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |