c语言问题 全局变量声明auto int i=1为什么是错误的

如题所述

全局变量是不能声明成auto类型的,默认声明成static
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-06
auto这个关键字用于声明变量的生存期为自动。这个关键字意味着,当前变量的作用域为当前函数或代码段的局部变量,意味着当前变量会在内存栈上进行分配。
全局变量不能为auto,因为这两者在内存分配上是不同的两种模式。
但要注意的是,全局变量不能等价于静态变量(static),在内存分配原则上,全局变量等价于extern,它们的生存周期都是进程级。本回答被提问者和网友采纳
相似回答