c语言中!与~有什么区别?最好举例说明

如题所述

! 这个是 逻辑反,凡是a的值不为0的,!a 就等于0; 如果a的值为0,则 !a 的值为1
而~这个是 按位取反
比如 int a=2 ; 用二进制表示为00 00 00 10;
则 !a = 0
而 ~a = 11 11 11 01 (按位取反后的二进制结果,此结果为补码形式)
求其源码为 : 10 00 00 11 即为 -3
所以 ~a 的结果为 -3
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-07-11
这是2个不同运算符
!表示 逻辑非 否定,
~表示按位取反 只用于二进制运算里 ,1变成0,0变成1.
第2个回答  2012-07-11
~是取反
!是取非
对于一位1或者0,当然是没区别
对于多位的话,显然就有区别了,你自己应该能明白了吧
第3个回答  2012-07-11
!表示 逻辑非 比如:你有个变量bool的,bIsTrue,你可以用if(!bIsTrue){}这么用
~表示按位取反 只用于二进制运算里 ,1变成0,0变成1.
第4个回答  2012-07-11
!是逻辑非,如!1=0,!0=1
~是按位取反,就是把数值化成二进制位,再按照上面的!的方法对每一位进行运算,如~15=0

c语言中!与~有什么区别?最好举例说明
! 这个是 逻辑反,凡是a的值不为0的,!a 就等于0; 如果a的值为0,则 !a 的值为1 而~这个是 按位取反 比如 int a=2 ; 用二进制表示为00 00 00 10;则 !a = 0 而 ~a = 11 11 11 01 (按位取反后的二进制结果,此结果为补码形式)求其源码为 : 10 00 00 11 即...

C语言中的 与或非运算
C语言中的与、或、非是C语言的逻辑运算符。1、逻辑与 在C语言中逻辑与用&&表示。举例:a&&b(其中a、b都代表一个条件)如果a和b都为真,则结果为真,如果a和b中有一个条件为假,则结果为假。2、逻辑或 在C语言中逻辑或用||表示。举例:a||b(其中a、b都代表一个条件)如果a和b有一个...

C语言中按位或,与,非是怎么用的,怎么运算?
C语言中指标运算要用pow()函式,例如2的4次方要写成这样:pow(2,4);^在C语言中是一个位操作符,作用是按位异或。注意,pow()函式要包含math.h档案 c语言中for语句是怎么用的 for是C语言中的一个关键字,主要用来控制回圈语句的执行。下面举例说明for语句的使用方法:int i;for(i=0; i i...

?和:有什么区别?
?在语言中表示疑问,那么疑问来自于判断。:在语言中表示判断的结果选择。所以编程逻辑就是先进行判断,然后再进行选择。例如,当a>b时,x=1否则x=0,可以写成x=a>b?1:0。

C语言中算术运算符%,++,——,都是什么意思?能举例子说明吗?
C语言中,算术运算符“%”代表模(取余)运算,“++”代表变量自增运算,“--”代表变量自减运算。1、模运算“%”“模”是“Mod”的音译,模运算多应用于程序编写中。 Mod的含义为求余。模运算在数论和程序设计中都有着广泛的应用,从奇偶数的判别到素数的判别,从模幂运算到最大公约数的求法,...

C语言中算术运算符%,++,——,都是什么意思?能举例子说明吗?
是求余的意思,是一个二元操作符,举例:保证a,b两个变量是整数,那么 a%b的意思就是求a除以b得到的余数。++ -- 都是一元的运算符,是将一个变量本身自增1或者自减1操作使用,如变量a=5;那么a++之后a的值变为6,但是要区分a++和++a这两种,两中操作后a的值都是6,但是如果使用c=a++;...

请问,C语言中的+=和-=事什么意思啊?
x+=1 表示 x=x+1 x-=1 表示 x=x-1

C语言中“?”和“:”是什么意思?
“?”在C语言中表示疑问。“:”在C语言中表示判断的结果选择。【例子】(a>b)?解释:判断表达式是否能够通过,如果能通过,那么说明才能进行之后的操作,如果不能通过,就选择后一种结果。(a>b)?y:n 解释:如果A大于B,那么选择Y的结果,如果A小于B,那么选择N的结果。

c语言a=!a​怎么理解,举个例子说明?
1){ a=!a;delay(1000)\/\/延时1s } 如果a初值是0,进入循环a=!a,其中!a就是1,然后延时1s之后,现在!a就是0了,如此反复,就实现了led灯每个1s闪烁一次 这是一个单片机领域的例子,在纯软件里面,也是如此来让a的值在0-1直接变化,可以作为一个标志,比如某个事件启动-停止这样的转换 ...

c语言中运算符有哪几种,优先级顺序是怎样
C语言中,运算符除了常见的三大类,算术运算符、关系运算符与逻辑运算符之外,还有一些用于完成特殊任务的运算符。运算符的运算优先级共分为15 级,1 级最高,15 级最低。 在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符 优先级相同时,则按运算符的结合性所规定...

相似回答