传值调用

简介: 传值调用

向函数传递参数的传值调用方法,把参数的实际值复制给函数的形式参数。在这种情况下,修改函数内的形式参数不会影响实际参数。


默认情况下, C 语言使用传值调用方法来传递参数。一般来说,这意味着函数内的代码不会改变用于调用函数的实际参数。


函数 swap() 定义如下:

/* 函数定义 */
void swap(int x, int y)
{
   int temp;
   temp = x; /* 保存 x 的值 */
   x = y;    /* 把 y 赋值给 x */
   y = temp; /* 把 temp 赋值给 y */
   return;
}


现在,通过传递实际参数来调用函数 swap()

#include <stdio.h>
/* 函数声明 */
void swap(int x, int y);
int main ()
{
   /* 局部变量定义 */
   int a = 100;
   int b = 200;
   printf("交换前,a 的值: %d\n", a );
   printf("交换前,b 的值: %d\n", b );
   /* 调用函数来交换值 */
   swap(a, b);
   printf("交换后,a 的值: %d\n", a );
   printf("交换后,b 的值: %d\n", b );
   return 0;
}


当上面的代码被编译和执行时,它会产生下列结果:

交换前,a 的值: 100
交换前,b 的值: 200
交换后,a 的值: 100
交换后,b 的值: 200


上面的实例表明了,虽然在函数内改变了 ab 的值,但是实际上 ab 的值没有发生变化。

目录
相关文章
|
7月前
浅学指针(2)数组函数传值调用
浅学指针(2)数组函数传值调用
|
2月前
形式参数
【10月更文挑战第3天】形式参数。
29 4
|
6月前
|
安全 C++ 开发者
C++一分钟之-函数参数传递:值传递与引用传递
【6月更文挑战第19天】C++中函数参数传递涉及值传递和引用传递。值传递传递实参副本,安全但可能效率低,适合不变对象;引用传递传递实参引用,允许修改,用于高效修改或返回多值。值传递示例显示交换不生效,而引用传递示例实现交换。常量引用则防止意外修改。选择传递方式需考虑效率与安全性。
56 2
|
7月前
|
C语言
用指针函数变量调用函数
用指针函数变量调用函数
28 2
|
C++ Python
Python函数参数传递:传值还是传引用
Python函数参数传递:传值还是传引用
63 0
|
7月前
数组参数和指针参数
数组参数和指针参数
35 2
传值调用与传址调用
传值调用与传址调用
71 0
|
编译器 C++
C++ 重载函数
C++ 重载函数
59 0
函数的传值调用和传址调用
函数的传值调用和传址调用
|
编译器
【为什么】将指针传递给函数
【为什么】将指针传递给函数