首页 > 解决方案 > 影响 char 上的移位运算符

问题描述

为什么这段代码会打印 -64?我不确定我是否理解右移,但这似乎很奇怪。

char t = 0x80; 
printf("%i", t); //print -128 => 0b10000000
printf("%i", t>>1); //print -64 => 0b11000000, not 0b01000000

标签: ctypes

解决方案


推荐阅读