初学者遇到的一个c指针有关问题
菜鸟遇到的一个c指针问题把下面的注释去掉后就可以输出结果了:/*p1 ap2 a*/问题就是为什么在把a中的
菜鸟遇到的一个c指针问题
把下面的注释去掉后就可以输出结果了:
/*
p1 = a;
p2 = a;
*/
问题就是 为什么在把 a中的值赋值给b后 还需要使用p1 = a;,p2 = a;这两条语句才能用 p1,p2指针输出值了?
希望大家帮忙解答
[解决办法]因为p1++,p2++后,指针都指向了结尾,这个时候当然没有输出,只有重新把p1和p2定向数组开始的位置,才能输出
[解决办法]记住最初的值
char *p11 = p1;
char *p21 = p2;
[解决办法]直接用 a,b; 就不需要p1 = a; p2 = b;
printf("string a:%s\n",a);
printf("string b:%s\n",b);
[解决办法]指针得自己控制,注意位置变化
[解决办法]指针移动了!!