#include <iostream> using namespace std; /*值传递,局部变量a和b的值确实在调用swap0时变化了,当结束时,他们绳命周期结束*/ void swap0(int a, int b) { int tem = a; a = b; b = a; } /*没有初始化指针就开始用,该函数是有问题的*/ void swap1(int *a, int *b) { int *tem; /*注意tem没有分配内存*/ *tem = *a; *a = *b; *b = *tem; } /*函数内只是指针的变化,指针的值没有变化*/ void swap2(int *a, int *b) { int *tem; tem = a; a = b; b = tem; } /*指针传递实现两个数的交换*/ void swap3(int *a, int *b) { int tem; tem = *a; *a = *b; *b = tem; } /*指针传递实现两个数的交换*/ void swap4(int &a, int &b) { int tem; tem = a; a = b; b = tem; } int main() { int num1 = 1; int num2 = 2; //swap0(num1, num2); //swap1(&num1, &num2); //swap2(&num1, &num2); //swap3(&num1, &num2); swap4(num1, num2); cout << num1 << endl << num2 << endl; return 0; }
几种交换两个数函数(swap函数)的写法和解析
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
上一篇:Eclipse 常用快捷键
下一篇:TCP、UDP区别
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
【ArkTS】鸿蒙开发 比较两个数的大小 用户界面输入两个数并输出较大数
【HarmonyOS】 鸿蒙开发 (比较两个值大小,输出较大值)在DevEco Studio中开发,用户界面输入两个值,比较两个值大小并输出较大值。主要是练习了对TextInput属性的应用。
鸿蒙开发 TextInput属性 用户界面输入 两个值比较大小 ArkTS -
使用函数实现两个数的交换。
前面写过不利用函数,交换两个数的值的程序
使用函数实现两个数的交换。 -
javascript用函数交换两个数 javascript交换两个变量的值
前言这篇文章总结了七种办法来交换a和b的变量值 var a = 123; var b = 456; 交换变量值方案一最最最简单的办法就是使用一个临时变量了,不过使用临时变量的方法实在是太low了 var t; t = a; a = b;
javascript用函数交换两个数 javascript c/c++ ViewUI 赋值