概述
#include<stdio.h>
int main(){
//首先右边是个int类型的整数,写出它的源码,反码,补码。然后改为char类型,最后输出的%d是打印十进制的有符号数字,所以把缺的位置补上,再通过补码写出源码
//源码首位表示符号位,0为正数,1为负数,正数的源码,反码,补码都一样,负数的反码是源码符号位不变,剩余位按位取反,补码是在反码基础上加1
char a=-1;
//10000000 00000000 00000000 00000001 源码
//11111111 11111111 11111111 11111110 反码
//11111111 11111111 11111111 11111111 补码
//11111111 改为char类型的值,因为是有符号,1代表符号,缺的位补1
//11111111 11111111 11111111 11111111 补全后的补码
//最后输出的是源码,所以补码再次返回成源码,结果还是-1
signed char b=-1;
//有符号数结果同上一个,因为默认就是有符号的
unsigned char c=-1;
//11111111
//00000000 00000000 00000000 11111111
//因为无符号,所以缺的位补0,表示正数,所以结果是255
printf("a=%dnb=%dnc=%dn",a,b,c);
return 0;
}
最后
以上就是外向烧鹅为你收集整理的C语言基础 源码,反码,补码举例的全部内容,希望文章能够帮你解决C语言基础 源码,反码,补码举例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复