[課業] 程設重點提示

看板NTUE-CS100作者 (mat)時間18年前 (2007/11/04 01:03), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/5 (看更多)
重點一:變數宣告 變數要宣告過才能用! 因為宣告變數這個動作,等同程式去Memory挖一塊空間來存放資料。 沒宣告就直接拿來用,那Memory根本沒地方存這個變數,當然不行。 各種變數型態佔用的空間大小不同 比如int是4byte ,char是1byte, double是8byte, etc.. 存放的方式int用2補數, float&double用IEEE754 據說...計概都有教XD 通常宣告會犯的錯誤就是"忘了指定初值"。 sample code ================================= int a; int b=0; cout << "a:" << a << endl; cout << "b:" << b << endl; ================================= 印出來b是零, a是什麼? Ans. a的值不一定。 舉例 (1)這一條是Memory -------------------- -------------------- (2)裡面有個程式甲,宣告了一個char x, 而且丟了一些值進去 x -------------------- | 00010011 | -------------------- (3)程式甲執行結束,作業系統回收Memory,把x標籤抹掉,但是內容還殘留著 -------------------- | 00010011 | -------------------- (4)這時候又跑程式乙,宣告了一個int a; 很不巧呢,系統挖了同一塊Memory給a a ------------------------------- | 00010011........ ------------------------------- 這時候a就會不小心用到Memory上面留存的Garbage了 如果拿這個a去做什麼事,那就會得到錯的結果。 所以宣告的時候順便指定初值是好習慣。 int a=0; ------------------- 00000000..~ ------------------- 就可以確保變數的值 -- ---- chchwy <批兔個人版> ptt2.cc -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.68.15.109

11/04 01:06, , 1F
建中哥是專業的好人!!
11/04 01:06, 1F
※ 編輯: chchwy 來自: 203.68.15.109 (11/04 01:21)
文章代碼(AID): #17BAdJQE (NTUE-CS100)
文章代碼(AID): #17BAdJQE (NTUE-CS100)