函数参数和按值传递
函数参数和按值传递
- 前言
- 一、函数参数和按值传递
- 二、多个参数
前言
本节内容将详细介绍函数参数和按值传递。
一、函数参数和按值传递
按值传递即将数值传递给函数,而后者就将其赋给一个新的变量。
用于接收传递值的变量被称为形参,传递给函数的值被称为实参。
在函数中声明的变量是该函数私有的,在函数被调用时,计算机将为这些变量分配内存,在函数结束时,计算机将释放这些变量使用的内存。
注意:如果在main()函数中声明了一个名为x的变量,同时在另一个函数中也声明了一个名为x的变量,则他们两个是完全不同的变量,这样的变量也称为自动变量,因为他们是在程序执行过程中自动被分配和释放的。
如下图所示:
二、多个参数
函数可以有多个参数。在调用函数时,只需使用逗号将这些参数分开。
例如:
n_char('R',25)
上述函数调用将两个参数传递给函数n_char(),定义函数形参时,若函数的两个参数类型相同,则必须指定每个参数的类型。
下面程序演示了一个接受两个参数的函数,它还表明,在函数中修改形参的值不会影响程序调用的数据。
#include<iostream>
using namespace std;
void n_chars(char c, int n);
int main()
{
cout << "Enter a character:";
char ch;
int times;
cin >> ch;
while (ch != 'q')
{
cout << "Enter a interger:";
cin >> times;
n_chars(ch, times);
cout << endl;
cout << "Enter another character or press q_key to quit:" << endl;
cin >> ch;
}
return 0;
}
void n_chars(char c, int n)
{
while (n-- > 0)
cout << c;
}
。鹿47: 你这个i初始值为0 判断从a[i-1]开始 数组不出栈了嘛!
雨天的木子李: 博主写的真好,期待回访
Passerby_Wang: 写得也太详细了吧,学到了好多 也欢迎博主来我这里指点一二呀
一二三o-0-O: 关注博主了,期待回访指点!
神秘的老年人: 谢我佬支持