【发布时间】:2021-08-17 08:01:57
【问题描述】:
在此语句中,左移运算符产生值 -2 十进制值...而我们要以十六进制值将其打印出来,它应该再次为 -2 ...但编译器打印 fffffffe 。我在这里错过了什么?
【问题讨论】:
-
%x接受unsigned int,它不可能打印负数。 -
... in an hexadecimal value it should be again -2呃...在 2 的补码机器(所有现代 CPU)中,-2 确实是 0xffffffffe。
标签: c