C语言用多种交换来函数SAWP

C语言用多种交换来函数SAWP

第1个回答  2016-08-11
第一题没什么好说的,就是一般的地址传递,交换数据;
第二题要注意的是:将char型指针强制转化为long型,q++的话,不是移动一个字节而是移动4个字节,所以q++后,指针指向e,所以printf输出efgh。本回答被网友采纳
第2个回答  2016-08-12
8 swap函数传入ab两个指针,
在函数中,交换的是a b的值,而不是*a *b
所以 不会影响主函数值。
调用后,还是p=&x q=&y
输出的也就是x y的值,为
3 5

9 q为long *, 自加一次 移动四个字节。
所以 在经过赋值,自加,再赋值后
r=p+4="efgh"
输出r值为
efgh本回答被提问者采纳
相似回答