unsigned 可能一部分人對于非負(fù)數(shù)習(xí)慣使用unsigned類型:一來是使的代碼清晰易懂(有點類似于const,但問題多多,下面會講到),二來是可以表達(dá)更大的數(shù)(這種情況應(yīng)當(dāng)比較少吧)。
考試大提示不使用的原因:
1 如果從一致性來講,對于自己確認(rèn)(只是自己確認(rèn))為非負(fù)數(shù)加unsigned,那對于for( int i=0; i<100;i++)中的i也應(yīng)當(dāng)加,但事實上很少有人會在這添加吧。
2 unsigned類型的變量,在進(jìn)行比較操作時經(jīng)常出現(xiàn)比較怪異的問題(對于老手可能用詞不當(dāng)),如:
unsigned int i=10;
if(i-100>0)
{
cout<<"false"< }
else
{
cout<<"true"< }
結(jié)果:false
有時候此類問題很隱蔽,上段時間就碰到過,也是那次之后萌發(fā)了少用此類型的念頭。
3 unsigned確實比int可表示的范圍更大,但又能大多少呢?要大不如申明為long型。
4 直接用int少打幾個字母。
考試大提示不使用的原因:
1 如果從一致性來講,對于自己確認(rèn)(只是自己確認(rèn))為非負(fù)數(shù)加unsigned,那對于for( int i=0; i<100;i++)中的i也應(yīng)當(dāng)加,但事實上很少有人會在這添加吧。
2 unsigned類型的變量,在進(jìn)行比較操作時經(jīng)常出現(xiàn)比較怪異的問題(對于老手可能用詞不當(dāng)),如:
unsigned int i=10;
if(i-100>0)
{
cout<<"false"<
else
{
cout<<"true"<
結(jié)果:false
有時候此類問題很隱蔽,上段時間就碰到過,也是那次之后萌發(fā)了少用此類型的念頭。
3 unsigned確實比int可表示的范圍更大,但又能大多少呢?要大不如申明為long型。
4 直接用int少打幾個字母。

