auto是局部变量的默认修饰 :
如果局部变量前不加任何存储类别说明符,那么这个局部变量就是auto类别的。//
//auto类别局部变量的特点的演示
#include<stdio.h>
int main(void)
{
int i;
for(i=0;i<3;i++)
{
auto int j=1; //这是个auto类别的局部变量,也可以写为int j=1;
//每次程序执行到这里时重新为这个变量寻找一个存储空间
//每次都为这个变量赋一个初值 1
printf("%d\n",j);
j++;
} //程序执行到这里后变量 j 所占据的内存就被释放了
//也可以理解为 j 已经不存在了,因为它的存储空间可能被挪做它用
return 0;
}
形参的性质也是一样的,形参也是被调用时才拥有自己的存储空间,在return时这个空间被释放掉。