C语言:各函数内部定义的静态局部变量可否同名?

C语言:各函数内部定义的静态局部变量可否同名?


一只名叫tom的猫
浏览 1769回答 3
3回答

一只斗牛犬

可以、、静态局部变量在函数调用结束后仍然存在,及它的内存空间不会被释放,但其他函数是不能引用它的。因为它是局部变量,只能被本函数引用,而不能被其他函数引用。所以你在其他函数中命名一个同名的变量是不冲突的、

一只萌萌小番薯

答案是可以的···首先我们把这个“静态局部变量”分为两个来分析“局部”和“静态”··现在先来分析“局部”,所谓的局部就是只在本函数范围内有效··所谓的“静态”就是在函数结束的时候内存不会释放··我们平时一般定义的int a;前面系统自动加上了auto·(也就是动态·)在函数结束的时候··会自动释放内存·················所谓所谓的“静态局部变量”就是只在本函数范围内有效的,并且在函数结束的时候不会释放内存···········希望可以帮助你理解三个定义“局部”“静态”“局部静态”

千万里不及你

可以的。如果定义一个全局变量,你在各个函数里面如果不用extern引用他,你单定义的静态局部变量也是和全局变量不矛盾的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android