問題描述:
閱讀下列程式,寫出程式的執行結果。上機時執行程式,與你的預期進行對
照、理解。如果對執行結果和其背後的原理仍不理解,請通過單步執行的手段跟蹤理解。
(1)閱讀下面兩個有靜態區域性變數的程式,閱讀中畫出其中各變數的變化過程,以掌握靜態變
量的儲存特徵,對照實際執行結果檢驗學習成果。必要時記得看書及課件。
#include using namespace std;
int f(int n);
int main()
int main()
{int k=4, m=1, p;
p=func(k, m);
cout預計執行結果是:8 17
實際執行結果是:
有了上次的教訓我這次終於對了!!!
今後要多多注意靜態變數。
因為static變數也就是靜態變數,在程式執行過程中被宣告後就會一直儲存在記憶體裡,所以只能宣告一次,第二次再訪問那個函式時,給靜態變數宣告同時賦值的語句就不再執行了,而靜態變數的值始終儲存在記憶體裡,也就是上次改變以後的值。
沒有static修飾的函式中的變數,只在函式被執行時占用記憶體,函式執行完畢後就被銷毀,資料也就不存在了,所以每次都要宣告,值也就不會變。
第12周專案 程式閱讀 4
檔名稱 score.cpp 作 者 惠睿 完成日期 2015年5月27日 版 本 號 v1.0 問題描述 閱讀程式,寫出程式的執行結果並理解。程式輸入 無輸入。程式輸出 輸出呼叫函式後的值。includeusing namespace std class a class b public a cla...
第12周專案1 閱讀程式(4)
檔名稱 test.cpp 5 作 者 劉暢 完成日期 2014 年 11 月 15 日 版 本 號 v1.0 8.9.問題描述 理解函式的預設引數 輸入描述 啥也不用輸 程式輸出 include using namespace std const double pi 3.1415926 float ...
第11周專案 程式閱讀 1
檔名稱 score.cpp 作 者 惠睿 完成日期 2015年5月21日 版 本 號 v1.0 問題描述 閱讀程式,寫出程式的執行結果並理解。程式輸入 無輸入。程式輸出 輸出呼叫函式後的值。include using namespace std class data data private int...