void swap1(int n1, int n2){ int temp = n1; n1 = n2; n2 = temp;}void swap2(int& n1, int& n2){ int temp = n1; n1 = n2; n2 = temp;}void swap3(int* p1, int* p2){ int temp = *p1; *p1 = *p2; *p2 = temp; } void swap4(int* &p1, int* &p2) { int *temp = p1; p1 = p2; p2 = temp; }
1 回答
已采纳
习惯受伤
TA贡献885条经验 获得超1144个赞
好久不弄c了,我就根据印象答一下,如有错误,及时指出,不要给初学者留下一个错误的思路。。
第一个:swap1(int n1, int n2),值交换,此函数不会影响两个元素的值,无法交换。
第二个:swap2(int& n1, int& n2),地址交换,此函数可以交换,调用是实参为地址,必须先取地址操作(引用)。
第三个:swap3(int* p1, int* p2),指针交换,此函数可以交换值,参数为指针。
第四个:swap4(int* &p1, int* &p2),地址指针交换,参数应该是指向指针的指针。可以交换。
- 1 回答
- 0 关注
- 1522 浏览
添加回答
举报
0/150
提交
取消