auto是一个C/
C++语言存储类型,仅在
语句块内部使用,初始化可为任何表达式,其特点是当执行流程进入该语句块的时候初始化可为任何表达式。C语言中提供了存储说明符auto、register、
extern、
static说明的四种
存储类别。四种存储类别说明符有两种存储期:自动存储期和静态存储期。其中auto和register对应自动存储期。具有自动存储期的变量在进入声明该变量的程序块时被建立,它在该程序块活动时存在,退出该程序块时撤销。在函数内部定义的变量成为
局部变量。在某些C语言教材中,局部变量称为
自动变量,这就与使用可选关键字auto定义局部变量这一作法保持一致。
不过C++11的auto关键字时有一个限定条件,那就是必须给申明的变量赋予一个初始值,否则
编译器在编译阶段将会报错。