一个较简单的C语言问题

2025-03-30 02:33:20
推荐回答(2个)
回答1:

swap(&x,&y); //将x与y的地址分别传给p1和p2

t=p1,p1=p2,p2=t; //这句是先将p1的值保存在t中,再将p2的值赋给t1,再将t中保存的p1的值赋给p2,其实就是交换p1与p2的值

因为p1和p2保存的是x与y的地址值(这是指针的功能嘛),所以当交换p1与p2的值的时候,p1指向了y,而p2指向了x,所以输出*p1即输出y的值,输出*p2即输出x的值。

回答2:

将两个指针的指向位置调换了