在一个文件lab3_1.cpp中定义一个全局变量n和主函数main(),在另一个文件f1.cpp中定义函数fn1()。在main()中对n赋值,再调用fn1(),在fn1()中也对n赋值,显示n最后的值。
时间: 2023-06-16 18:02:07 浏览: 161
可以使用extern关键字来引用其他文件中定义的全局变量。假设我们在lab3_1.cpp中定义了全局变量n,然后在f1.cpp中定义了函数fn1(),代码如下:
```c++
// lab3_1.cpp
#include <iostream>
int n; // 定义全局变量n
int main() {
n = 10; // 对n赋值
std::cout << "在main()中n的值为:" << n << std::endl;
fn1(); // 调用fn1()
std::cout << "在main()中调用fn1()后,n的值为:" << n << std::endl;
return 0;
}
// f1.cpp
extern int n; // 声明全局变量n
void fn1() {
n = 20; // 对n赋值
std::cout << "在fn1()中n的值为:" << n << std::endl;
}
```
在这个例子中,我们在lab3_1.cpp中定义了全局变量n,并在main()函数中对其进行赋值。然后在f1.cpp中使用extern关键字声明了全局变量n,在fn1()函数中对其进行了赋值。在main()函数中,我们先输出了n的值,然后调用了fn1()函数,再次输出n的值。运行程序,输出结果如下:
```
在main()中n的值为:10
在fn1()中n的值为:20
在main()中调用fn1()后,n的值为:20
```
可以看到,在fn1()函数中对n进行的赋值也影响了main()函数中n的值,因为它们都是全局变量。
阅读全文