
[面试/笔试系列3]局部变量可否与全局变量同名
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本文探讨了在编程中局部变量和全局变量命名规则的问题,具体分析了当它们拥有相同名称时可能产生的作用域冲突及解决方法。
局部变量能否与全局变量同名?答案是可以的,但局部会屏蔽全局的作用。如果需要使用全局变量,则必须通过::来引用它;在函数内部定义一个与全局变量同名的局部变量时,该局部变量将覆盖全局作用域内的同名全局变量,在函数内使用这个名称时实际上是使用的局部版本而不是全局版本的变量值。另外,某些编译器允许在一个函数中多次声明同一个名字的局部变量,比如在两个不同的循环结构内部分别定义一个相同的局部变量,这些局部变量的作用范围仅限于它们所在的那个特定代码块。
如何引用已存在的全局变量?可以通过包含头文件或者使用extern关键字来实现。如果选择通过包含头文件的方式来访问某个已经声明为全局的实体,则编译器会在检查时发现任何错误;而采用extern方式的话,即使在调用外部名称时出现了问题(比如拼写错误),这些问题将不会在编译阶段被识别出来,而是要等到链接阶段才会暴露。
全部评论 (0)
还没有任何评论哟~


