
C语言中取反符号是~。
C语言运算符:
1.算术运算符:*-+/%
2.关系运算符:><==!=>=<=
3.逻辑运算符:!&&||
4.位运算符:<<>>~|^&
5.赋值运算符:=及扩展赋值运算符
6.条件运算符:?:
7.逗号运算符:,
8.指针运算符:*和&
9.求字节数运算符:sizeof
10.强制类型转换运算符:(类型)
扩展资料
C语言中取反符号的使用
a=23,c=~a,printf("%d",c)
#include<stdio.h>
intmain()
{
inta=23
intc=~a
printf("%d",c)
return0
}
~10的计算步骤:转二进制:0 1010
计算补码:0 1010
按位取反:1 0101
转为原码:1 0101
按位取反:1 1010 反码
末位加一:1 1011 补码
符号位为1是负数,即-11
规律:~x=-(x+1);
因此,t=~10(1010)==-11;
我感觉是这么回事,0x11二进制是表示是00010001,~之后是11101110,转化为十六进制后0xEE,这是在TC中整形2个字节,而在VC中整形是4个字节,所以 0x11转化为二进制时前面应该在补八个零,即0000000000010001~后为1111111111101110转为为十六进制后就为0xFFEE了。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)