此存储类表示标识符具有自动存储持续时间。这意味着一旦定义标识符的范围结束,标识符所表示的对象就不再有效。
由于所有对象(不在全局范围内或未声明static)都在定义时默认情况下具有自动存储持续时间,因此此关键字主要具有历史意义,因此不应使用:
int foo(void)
{
/* 具有自动存储持续时间的整数。 */
auto int i = 3;
/* Same */
int j = 5;
return 0;
} /* 不再能够使用 i 和 j 的值。 */