第1个回答 2014-07-05
auto为动态变量 可省略,在c++中通常都不写auto,即未加属性说明的局部变量都为自动变量。当定义时,系统即在动态区为其分配存储单元。函数运行结束后释放它所占的存储单元;如果在定义时,不给自动变量赋初值,那每次调用时,其初值是不确定的;如果定义时赋初值,那每次调用时它都取定义时所指定的值。 static为局部静态变量所占存储单元在静态区,在调用它所在的函数后,在函数体内被修改了的静态变量的值被保留下来作为下次函数调用的初值起到全局变量的作用。 如果使用一个全局变量,又怕受到其它变量的干扰,于是就将其设计为静态变量