c++里面的作用于问题老师混淆,不知那位大侠可以简明的点拨一下,谢谢。

大哥们,我想请分析下,c++里面的作用于问题老师混淆,不知那位大侠可以简明的点拨一下,谢谢。
最新回答
瑾色如弦

2026-10-20 14:57:07

作用域:分变量作用域和函数作用域
1、变量作用域
变量分局部变量,全局变量,静态变量,
a、其中局部变量又称块变量,即{ }里面定义的变量,这种变量在这个{ }外面是不可见的,因此其作用域就在这个{ }括起来的块中,这里需要注意的是如果括号外面定义了一个 int i;在括号内部又定义了一个int i;那么当函数执行到括号内部时,内部定义的i 起作用,外部定义的i 不起作用,即外部屏蔽。
b、其中全局变量是指定义在一个源文件起始部分,其作用域对整个源文件都有效的变量,需要注意的是,同a中说道的,如果 定义了一个全局变量 int i;在源文件里面的一个块中又定义了一个int i,那么当程序执行到源文件里面块中定义的 i 时,这个块内的 i 将屏蔽外部的全局变量。 对于全局变量,可以用extern 将其引用到其他源文件中使用,这样这个全局变脸的作用域就扩大到了被引用的源文件去了。
c、静态变量,分为静态局部变量,静态全局变量,静态的意思就是指在静态存储区为变量分配的空间,只有当整个程序结束的时候才释放。其作用域如前面的局部变量和全局变量,需要注意的是,静态全局变量不可以被其他源文件引用。
2、函数的作用域
雷同变量的作用域。需要注意的就是加 extern 和static的函数

其实这个比较基础,只需要多看看书本知识就懂了。
倾城佳人

2026-07-19 09:39:05

呵呵。作用域其实非常简单。
你就看{}就可以了。{}内定义的变量或者对象的作用域就在{}内。
{}外定义的就在{}外。函数内部定义的就在函数内。在所有的函数外定义的就是全局变量。
动了?