c语⾔局部变量和全局变量可以同名吗
C语⾔中全局变量和局部变量的区别是他们的作⽤域不同,全局变量是整个C程序,局部变量是定义所在的⼤括号内,同⼀个作⽤域内不能定义两个同类型同名的变量,因为编译会报错。
由1个或者多个C⽂件组成的⼯程中,可以定义和全局变量同名同类的局部变量,但是不提倡这样使⽤,因为此时变量的值和变量被调⽤的位置有关系。
使⽤全局变量时,需要先⽤extern关键字声明,全局函数也是⽤相同的关键字。
顺便复习static关键字:
static主要定义全局静态变量、定义局部静态变量、定义静态函数。
特点
\⽤法
定义全局静态变量定义局部静态变量定义静态函数
内存全局数据区分配全局数据区分配⽆
作⽤域⽂件内定义开始到⽂件结束,其他⽂件不可⽤,
不可继承,其他⽂件可以定义重名变量
函数内定义开始到函数结束
⽂件内定义开
始到⽂件结束
可见域⽂件内定义开始到⽂件结束
函数内定义到⽂件结束,局部可⽤,但是全
局可见,局部函数返回其值可见
⽂件内定义开
c语言和c++区别始到⽂件结束
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论