字符变量等于128
for(char a=32;a<128;a++)
cout<<"a="<<a<<endl;
这个怎么会死循环呢。
而改成a<127就没有问题。
当a=128时,出现了什么问题。
[解决办法]
char 类型,单字节 上下限值
[解决办法]
char 改成 unsigned char ;
否则, char 127+1 = 0x80 , 这个值是-128, 不是128
就成死循环了
[解决办法]
应该是char型变量占1个字节 也就是8个bit位 其中第一位作为符号位 还剩7位 全1时最大
01111111(b)=127 也就是最大是127 永远满足条件a<128 所以死循环了
或者简单点说就是char型变量的表示范围是 -127--127
[解决办法]
char 是有符号类型, 取值0~127再加就高位溢出变成负数了 永远<128