Ⅰ 該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,現在再回到主函數
}