网站规划课程设计模板,站长工具网站排名,引用评论框代码wordpress6,一般通过头发就能察觉到简介
在C中#xff0c;函数参数的传值方式有传值调用、指针调用和引用调用。接下来#xff0c;通过一个实例来演示三者区别。
代码
#include iostreamusing namespace std;
//传值调用
void Swap(int a,int b)
{int tempa;ab;btemp;
}
//指针调用
void Swap2(int…简介
在C中函数参数的传值方式有传值调用、指针调用和引用调用。接下来通过一个实例来演示三者区别。
代码
#include iostreamusing namespace std;
//传值调用
void Swap(int a,int b)
{int tempa;ab;btemp;
}
//指针调用
void Swap2(int *a,int *b)
{int temp*a;*a*b;*btemp;
}
//引用调用
void Swap3(int x,int y)
{int temp;tempx;xy;ytemp;
}
int main(int argc, char** argv){int a10,b20;cout交换前\ta\tb\n;cout\t\ta\tbendl;cout交换后\n\n;cout函数形参\ta\tb\n;Swap(a,b); coutint\t\ta\tbendl;Swap2(a,b);coutint *\t\ta\tbendl;Swap3(a,b);coutint \t\ta\tbendl;return 0;
}运行结果 分析
调用Swap函数是把实际参数赋给形式参数。形参改变不影响实参所以a10b20。这属于传值调用调用Swap2函数形参为int类型的指针实参为变量a和b的地址形实结合后形参分别指向a和b形参的改变会改变实参的值。所以a20b10。这属于指针调用。调用Swap3函数形参为int类型的引用实参为变量a和b形实结合后形参分别是a和b的别名。对形参的改变同时也会改变实参。所以a10b20.这属于引用调用。上述过程a和b经过了两次交换。