作者chchwy (mat)
看板NTUE-CS100
标题[课业] 程设重点提示
时间Sun Nov 4 01:03:12 2007
重点一:变数宣告
变数要宣告过才能用!
因为宣告变数这个动作,等同程式去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
1F:推 moonlights: 建中哥是专业的好人!! 11/04 01:06
※ 编辑: chchwy 来自: 203.68.15.109 (11/04 01:21)