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

如题所述

可以、、
静态局部变量在函数调用结束后仍然存在,及它的内存空间不会被释放,但其他函数是不能引用它的。因为它是局部变量,只能被本函数引用,而不能被其他函数引用。所以你在其他函数中命名一个同名的变量是不冲突的、、
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-17
答案是可以的···首先我们把这个“静态局部变量”分为两个来分析“局部”和“静态”··现在先来分析“局部”,所谓的局部就是只在本函数范围内有效··所谓的“静态”就是在函数结束的时候内存不会释放··我们平时一般定义的int a;前面系统自动加上了auto·(也就是动态·)在函数结束的时候··会自动释放内存·················所谓所谓的“静态局部变量”就是只在本函数范围内有效的,并且在函数结束的时候不会释放内存···········希望可以帮助你理解三个定义“局部”“静态”“局部静态”
第2个回答  2012-11-17
可以的。如果定义一个全局变量,你在各个函数里面如果不用extern引用他,你单定义的静态局部变量也是和全局变量不矛盾的。
第3个回答  2012-11-17
同一个函数内部,不行。
第4个回答  2012-11-17
可以 除了全局变量 在功能函数里定义的变量的作用域就只在这个功能函数里
相似回答