请问在C语言中,auto和static分别代表什么意思,有什么作用,谢谢

如题所述

auto变量会存储在堆栈里面,每次定义的时候会分配存储区,而在用完释放的时候会收回存储区。
初始化的时候,如果你不赋初值,auto变量是不确定的。C默认的就是auto类型。所以一般都不加。
比如你int a;那a就是auto类型的。
static变量会被存储在静态存储区。你可以理解这个存储区为公共的。static变量声明的时候,如果你不初始化,编译器会自动初始化。而且,你用完了,这个变量的退出值会被保存下来。
static 一般更主要的是和全局变量配合使用,或者那些大量的存储元素被经常性使用的,比如常量数组,避免不断地存储分配
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-06
c语言中变量一共有四种变量存储类,分别为:
auto(自动变量)
register(寄存器变量)
static(静态变量)
还有一个是外部变量。
你可以去百科一下了解详细情况。
第2个回答  2014-01-06
能百度的,自己动手……概念无法理解的,再来提问追问

好吧

相似回答