10.3 存储类说明符
你已经遇到过一些可以放在变量前面的存储类说明符,如extern和static。下面将讨论更多的说明符,它们给出有关在程序中使用变量的编译器信息。
10.3.1 auto
这个关键字用来声明一个自动局部变量,与static相反。这是函数或方法内部变量的默认声明方式,并且没有人使用它。下面是一个例子:
auto int index;
该语句声明index为一个自动局部变量,意味着在进入该块(即一段位于花括号之内的语句、方法或函数序列)时,自动为它分配存储空间,并在退出该块时自动解除分配。因为在块中是默认的,因此语句
int index;
和语句
auto int index;
是等效的。
静态变量有默认的初始值0,而自动变量没有默认的初始值。除非显式地给自动变量赋值,否则它们的值是不确定的。