在C语言中, static
变量的范围通过文件。 在以下代码中,函数返回静态变量。
int fun(){ static int i = 10; return i; } int main() { printf("%dn", fun()); return 0; }
并打印输出10。
那么,在C未定义的行为中返回本地静态还是定义明确?
你好像错过了return
语句的整个逻辑 。
在这个片段中,您实际上是返回(变量的) 值 ,因此,如果没有static
存储,代码也可以。
如果您想要返回变量的地址 ,则需要超出函数的范围。 在这种情况下,您需要一个具有static
存储的变量,以便返回的地址有效(以便可以从调用函数中有意义地使用它),甚至在定义它的函数之外。 所以,要么
以上就是c/c++开发分享在C中返回本地静态相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/549986.html