本人不使用的原因:
1 如果从一致性来讲,对于自己确认(只是自己确认)为非负数加unsigned,那对于for( int i=0; i<100;i++)中的i也应当加,但事实上很少有人会在这添加吧。
2 unsigned类型的变量,在进行比较操作时经常出现比较怪异的问题(对于老手可能用词不当),如:
unsigned int i=10;
if(i-100>0)
{
cout<<"false"<<endl;
}
else
{
cout<<"true"<<endl;
}
结果:false
有时候此类问题很隐蔽,上段时间就碰到过,也是那次之后萌发了少用此类型的念头。
3 unsigned确实比int可表示的范围更大,但又能大多少呢?要大不如申明为long型。
4 直接用int少打几个字母
最新评论