僅在語句塊內部使用,初始化可為任何表達式,其特點是當執行流程進入該語句塊的時候初始化可為任何表達式。C語言中提供了存儲說明符auto、register、extern、static說明的四種存儲類別。四種存儲類別說明符有兩種存儲期:自動存儲期和靜態存儲期。其中auto和register對應自動存儲期。具有自動存儲期的變數在進入聲明該變數的程式塊時被建立,它在該程式塊活動時存在,退出該程式塊時撤銷。在函式內部定義的變數成為局部變數。在某些C語言教材中,局部變數稱為自動變數,這就與使用可選關鍵字auto定義局部變數這一作法保持一致。
基本介紹
- 中文名:auto
- 解釋:為一個自動存儲變數的關鍵字
- 初始化:可為任何表達式
- 局部變數:稱為自動變數
C語言
auto double a=3.7;
C++語言
auto x=5.2;//這裡的x被auto推斷為double類型
map<int,int>m;for(auto it=m.begin();//這裡it被auto推斷為map<int,int>::iterator類型it!=m.end();++it){//....}