C语言程序中的函数
关于局部变量和全局变量,在使用数组作为定义函数的实参时,有一些需要注意的地方。
程序1如下:
#include<iosteam>
using namespace std;
void change(int a[]) a[] 为局部变量
{
a[0]=30; a[1]=50;
}
int main()
{
int a[2]={3,5};
change(a); 这里的a不是一个变量,是数组在内存中的地址,改变它会直接改变内存中的数值。
cout << a[0] << a[1] <<endl; 输出为30,50
return 0;
}
程序2如下:
#include<iosteam>
using namespace std;
void change(int a, int b) a b 为局部变量
{
a=30; a=50;
}
int main()
{
int a[2]={3,5};
change(a[0], a[1]);
cout << a[0] << a[1] <<endl; 输出为3,5
return 0;
}
此处一个是使用数组里的元素,一个是直接使用数组,但是结果完全不同