11关于c++的问题 简单的

来源:百度知道 编辑:UC知道 时间:2024/09/22 16:36:34
#include<iostream.h>
int x=1;
void fun(int c)
{
x=3;
}
void main()
{
fun(x);
cout<<x<<endl;

}

#include<iostream.h>
int x=1;
void fun(int x)
{
x=3;
}
void main()
{
fun(x);
cout<<x<<endl;

}
到底区别在什么地方 为什么结果不一样

注意:void fun(int x)
{
x=3;
}
中重新定义了x,自动屏蔽了全局变量x,所以这两个x其实是不同的变量。
void fun(int c)
{
x=3;
}
中的x=3;改变了全局变量x的值。
综上,两个函数是不同的。
还有一点,在有些编译系统里,#include<iostream.h>是不允许的,只能用#include<iostream>

不会不同的。