首页 > 开发 > C++ > 正文

-127 & 0xFF为什么是129

2017-09-11 21:19:29  来源: 网友分享
-127 = 1000 0001    &0xFF = 1111 1111不是等于 1000 0001; 等于本身吗?为什么'与'运算后变化 129

解决方案

请你这样测试:
char val = -127;
char val2 = val & 0xFF;
cout << val2 << endl;

我猜你是
cout << (-127 & 0xFF) <<endl;
或者是
cout << (val & 0xFF) <<endl;
在计算中类型转换成int了。