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

作者&投稿:愈殷 (若有异议请与网页底部的电邮联系)
c语言里,i++与++i的区别,最好举例说明~

i++ 和 ++i的基本功能是相同的,都是对变量i进行自增1运算,从功能上讲相当于i =i+1 ;
++运算符分为前缀++和后缀++,如i++中的++就是后缀运算符,++i中的就是前缀运算符,两个的区别在于:
前缀++,先使用变量,再进行变量自增1
后缀++,先进行变量自增1,再使用变量
现在分析你的代码:i=1;k=++i; //先加,后用,i=i+1=2 k=i=2z=i++; //先用,后加,z=i=2, i=i+1=3输出 22

=是把式子右面的值赋给左面 如a=b的意思是把b的值赋给a 而==的意思是判断两边是否相等 是一个条件 要跟随if语句 如if(a="b")

! 这个是 逻辑反,凡是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

这是2个不同运算符
!表示 逻辑非 否定,
~表示按位取反 只用于二进制运算里 ,1变成0,0变成1.

~是取反
!是取非
对于一位1或者0,当然是没区别
对于多位的话,显然就有区别了,你自己应该能明白了吧

!表示 逻辑非 比如:你有个变量bool的,bIsTrue,你可以用if(!bIsTrue){}这么用
~表示按位取反 只用于二进制运算里 ,1变成0,0变成1.

!是逻辑非,如!1=0,!0=1
~是按位取反,就是把数值化成二进制位,再按照上面的!的方法对每一位进行运算,如~15=0

C语言中:&&和||符号是什么意思?
答:“&&”表示 与,意为同时都要满足。“||”表示 或,意为二者或多着只要满足其中一个。在C语言中,&&和||都属于逻辑运算符,并且都是双目运算符。逻辑运算符总共有3个,分别是"&&"、"||"和"!"。a && b,一假必假,结合性从左至右。||是逻辑或运算符,a || b,一真必真,结合性从左...

c语言 !!是什么
答:1.一个C语言源程序可以由一个或多个源文件组成。 2.每个源文件可由一个或多个函数组成。 3.一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。 4.源程序中可以有预处理命令(包括include 命令、if命令、pragma命令),预处理命令通常应放在源文件或源程序的最前面。 5.每一个说明,每...

C语言里面的运算符优先顺序如何?
答:C语言中,运算符的运算优先级共分为15 级。1 级最高,15 级最低。 在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符 优先级相同时,则按运算符的结合性所规定的结合方向处理。各等级运算符如下:(以下说明中,对传统的1级和2级做了细化,1和2对应传统1级,3...

c语言中的关系运算符“!=”的优先级比“《=”的优先低,为什么呢?为什么...
答:逻辑非运算符“!”的结合方法是自右向左优先级为2,和不等于运算符“!=”不同,“!=”的结合方法是自左向右优先级比<=低 “!”是单目运算符,优先级必然高于双目运算符,像“!=”,“<=”等

C语言中?和:是什么意思
答:是一个语句,判断一个表达式的真假来执行两条代码 比如 int a=9,b=8;a>b?a=8:b=9; //就是这句 相当于if语句吧,问号前面的表达式为真的时候执行a=8,否则b=9;

!!#和!/有什么区别?
答:然后进行逻辑或的运算。在c语言的逻辑运算中,逻辑“非”(表示为【 !】)优先级是高于逻辑“或”(表示为【 || 】)的。因此这个符号的运算方式是先运算!再运算||。这个符号常用在c语言的逻辑运算中,如表示a=1||!b=2,就是指对b先进行取非运算,然后在与变量a进行运算。

C++中分号的使用规则
答:就相当于中文中的句号。表示一条语句的结束。反过来,“;"是语句的象征,本身 ";"就表示一条语句,称为空语句,一般用于占位。比如while (1) ; ;第1个分号表示的是空语句,第2个分号表示的是语句结束符。主要区分表达式和语句的区别,在C语言中带分号的就是语句,不带分号的即为表达式。

c语言中!和x有什么区别?
答:C语言简介 C语言是一门面向过程的计算机编程语言,与C++、C#、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植...

C语言中&= , ?和: 分别是什么意思啊?还有一个&和&&有没有区别啊?求大神...
答:&=,表示将这个符号左边的数和右边的数做与运算,再把结果赋给左边的数,例如:a &= b相当于 a = a&b。?:是问号表达式,例如 a>b?a:b,意思就是如果a大于b,那么这个表达式的值就是a,否则表达式的值为b。&和&&有区别的,前面一个是按位与,后面一个是逻辑与,例如:1 & 2,这个...

c语言中“a!”与“!a”有什么区别
答:1、本质区别 双引号里面的是字符串, 而单引号里面的代表字符。2、输出区别 str = “a”输出的就是a这个字母;str = ‘a’输出的测试65 3、底层区别 用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。