C++判断小问题

[复制链接]
查看11 | 回复3 | 2009-7-4 11:40:15 | 显示全部楼层 |阅读模式
全局变量的作用域比局部变量的作用域范围大,这句话不对是为什么,最好能举个例子

回复

使用道具 举报

千问 | 2009-7-4 11:40:15 | 显示全部楼层
错 如果同一个源文件中,只有一个主函数,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量被“屏蔽”,即它不起作用。所以是错的 8.1.1 局部变量 局部变量也称为内部变量。局部变量是在函数内作定义说明的。其作用域仅限于函数内, 离开该函数后再使用这种变量是非法的。 例如: int f1(int a) /*函数f1*/ { int b,c; …… } a,b,c有效 int f2(int x) /*函数f2*/ { int y,z; …… } x,y,z有效 main() { int m,n; …… } m,n有效 在函数f1内定义了三个变量,a为形参,...
回复

使用道具 举报

千问 | 2009-7-4 11:40:15 | 显示全部楼层
我感觉是对的当该域中如果有重名的局部变量和全局变量在调用全局变量的时候则需要使用::运算符,但这也不妨碍命题的成立,因为毕竟人家的作用域也覆盖到了这里。有这样一个观点你可以参考下,我觉得有点道理:因为变量的有效期是从声明位置开始的,而局部变量和全局变量可以有同样的结束位置,在这种情况下,如果先声明局部变量后声明全局变量,则全局变量作用域比局部...
回复

使用道具 举报

千问 | 2009-7-4 11:40:15 | 显示全部楼层
这样理解吧。局部的能覆盖掉全局的。你说谁大?!...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行