小编mon*_*nty的帖子

不使用宏定义计算char的限制

我试图使用以下表达式计算char类型的限制.

(char)(~(unsigned char)0 >> 1)
Run Code Online (Sandbox Code Playgroud)

我预计这将等于127,但答案是-1.
然后我替换了这个表达式.

~(unsigned char)0 
Run Code Online (Sandbox Code Playgroud)

通过

(unsigned char)~0
Run Code Online (Sandbox Code Playgroud)

这个给出正确的答案那么这两者有何不同

c casting bitwise-operators

4
推荐指数
1
解决办法
54
查看次数

标签 统计

bitwise-operators ×1

c ×1

casting ×1