想知道为什么b的结果是-1,不依靠电脑,该如何在纸上推算出来呢(在下C语言入门,还请多多指教)
#include<stdio.h> int main(void){ int a,b; a = 0b01111111111111111111111111111111; b = 0b11111111111111111111111111111111; printf("%d %d\n",a,b); return 0; }
收起
这是我自己写的文章,认真看一遍!你就会了,实在不会私信我!: 原码、反码和补码 | C++知识精讲13【看了少走10年弯路】_Yu·仙笙的博客-CSDN博客_c++原码反码补码转换 C++知识精讲的第14篇,原码、反码和补码,此专栏会讲许多,各种各样的类型,如果喜欢此专栏请订阅持续关注,感谢大家的支持。内容包括First·机器数和真值(学习原码、反码、补码必学知识点)、Second·数的原码、反码和补码表示以及之间的互相转换、Third·历年CSP相关知识点课堂练习题(附带答案及解析),历年CSP相关知识点课堂练习题(附带答案及解析)里面含有单选题,多选题还有课外拓展编程题c++希望大家前来观看,此篇为作者的得意之作,第二部分包括作者自己独一档的理解和表格,原码反码补码的转换方法口诀 https://blog.csdn.net/djfihhfs/article/details/126874311?spm=1001.2014.3001.5502
报告相同问题?