day 05 局部變量 全局變量 靜態變量

//varibole 變量時間 空間 生命期 和作用域

//局部變量 : 僅在定義的語句塊中有效
//全局變量 : 僅在本文件中使用  全局變量 文件的全范圍,不受歡迎,盡量少用
//靜態變量 : 在本文件中使用,第
/*
全局變量就是對于整個程序,都可以調用的變量,但程序里面不一定就只是一個程序,也可能調用其他子程序。
只在子程序里面聲明并起到作用的就是局部變量
靜態變量就是指變量的地址不變,也就是說變量,本質上就是一個寄存器或者存儲區,每個存儲的位置都是有固定的地址,以便訪問,但有時候,并不一定要一個變量就占據一個地址,如果我變量所儲存的數據并不需要長期存在,那么在我不需要的時候搜索,就釋放那個地址,以便其他程序利用這個地址,我不確定這個就叫自動型變量,我是沒有用自動型變量來表示啦。其實也沒有必要糾結于他們的表述,你只要知道變量本身就是一個存儲空間罷了,并且知道怎樣控制變量的作用位置,以及控制變量的存儲空間就OK了。
*/

include<iostream>

using namespace std;

int counter();
int c; //全局變量 輸出結果 1 2 3
main()
{
cout<< counter() << endl;
cout<< counter() << endl;
cout<< counter() << endl;
}

int counter()
{

// int c = 0;
c++;
return c; //輸出結果 1 1 1 c 每次都會被初始化為 0
}

/*
int counter()//計數器函數
{
static int c = 0; //靜態變量 輸出結果 :1 2 3 不會釋放空間,直到程序結束。。
c++;
return c;
}
*/

// 全局變量 extern 類型 變量名 但不能聲明靜態變量
//extern int c;

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 題目類型 a.C++與C差異(1-18) 1.C和C++中struct有什么區別? C沒有Protection行為...
    阿面a閱讀 7,706評論 0 10
  • ———————————————回答好下面的足夠了---------------------------------...
    恒愛DE問候閱讀 1,749評論 0 4
  • iOS面試小貼士 ———————————————回答好下面的足夠了------------------------...
    不言不愛閱讀 2,002評論 0 7
  • 1.寫一個NSString類的實現 +(id)initWithCString:(c*****t char *)nu...
    韓七夏閱讀 3,796評論 2 37
  • 因為大人監管不利導致孩子出現安全事故的案例數不勝數,特別是馬上將要到來的暑假,更是高發期。這就涉及到各位家長,需要...
    補拙莫如勤LV閱讀 323評論 2 3