Ⅰ 该c语言程序的输出结果为Ab,如何理解
main()
{
char c1='A',c2='a',*p1,*p2;
p1=&c1;//p1指向的是c1
p2=&c2;//p2指向的是c2
fun(p1,p2);//这里传的是p1,p2。并不是c1,c2,接下来看函数里的
printf("%c%c\n",c1,c2);//所以,此时c1的内容并没有改变,c2自增了1,所以结果就是Ab
}
void fun(char *a,char*b)//这里的a指向的是p1,b指向的是p2
{a=b;//这里a就指向了b,也就是p2,所以此时a就是指向了c2,而c1还是自己原来的,并没有任何变化
(*a)++;//这里把a现在的内容自增了,也就是c2的内容自增了,就是从a变成了b,现在再回到主函数
}