在c语言中,逗号除了作为分隔符,还可以用作一种运算符----逗号运算符,用逗号运算符将几个表达式连接起来,例如a=b+c,a=b*c等称为逗号表达式 。
一般形式为:
表达式1 ,表达式2,表达式3 ,…,表达式n
例:x=2,y=3,z=4
逗号表达式具有从左至右的结合性,即先求解表达式1 , 然后依次求解表达式2,直到表达式n的值 。表达式n的值就是整个逗号表达式的值 。上述的逗号表达式的值就是表达式z=4的值4.需要注意的是 , 逗号运算符是所有运算符中级别最低的 。
例:有如下程序段:
程序显示结果为:y=6,x=6
讨论:将y=(x=a+b),(b+c);改为y=((x=a+b),b+c) 的程序结果?
? 11 关系运算符和关系表达式
一、C语言中的逻辑值
C语言中的逻辑值只有两个:真(true)和假(flase) 。用非零代表真,用零代表假 。因此,对于任意一个表达式 , 如果它的值为零,就代表一个假值,如果它的值为非零 , 就代表一个真值 。只要值不是零,不管是正数 , 负数,整数,实数,都代表一个真值 。例如-5的逻辑值为真 。
二、关系运算符及其优先次序
C语言提供了6种关系运算符,见表
由两个字符组成的运算符之间不可以加空格,关系运算符都是双目运算符 。
(1)结合性:自左向右 。
(2)优先次序:前4种关系运算符(,=,=, )的优先级别相同,后两种 (==,!=)优先级相同,且前4种优先级高于后两种;关系运算符的优先级低于算术运算符,高于赋值运算符 。
三、关系表达式
由关系运算符连接而成的表达式称为关系表达式 。
例如:ab,(a=7)(b=10)等都是合法的关系表达式 。
关系表达式的结果有两个:0和1, 。其中0表示假,1表示真 。如果关系表达式成立 , 则值为真,如果关系表达式不成立,则值为假 。
例:变量a的值为5,b的值为6 , 那么关系表达式ab的值为假,即为0.而关系表达式
(a=13)(b=10)的值为真,即为1 。
当关系运算符两边值的类型不一致时,若一边是整型,一边是实型,系统将自动把整型数转化为实型数,然后再进行比较 。
?12 逻辑运算符和逻辑表达式
一、逻辑运算符及其优先级
C语言提供了3种逻辑运算符,如下表 。
二、逻辑表达式
“”和“||”的运算对象有两个,故它们都是双目运算符,而!的运算对象只有一个,因此它是单目运算符 。逻辑运算举例如下:
(1)ab: 当两边都为“真”时 , 表达式ab的值才是真 。
值得注意的是:在数学中,关系式0
(2)a||b: 当||两边有一个为“真”时,表达式a||b的值就是真 。
(3)!a:表示取反 , 如果a为真,则!A为假,反之亦然 。例如!-5的值就为0.
在C语言中 , 由或||组成的逻辑表达式 , 在某些特定情况下会产生“短路“现象 。
(1)xyz ,只有当x为真(非0)时,才需要判别y的值;只有x和y都为真时,才需要去判别z的值;只要x为假就不必判别y和z,整个表达式的值为0 。口诀:“一假必假” 。
例:(!5==1)(++i==0)(!5==1)表达式的值为0,所以计算机运行中就跳过(++i==0)此表达式,(!5==1)(++i==0)表达式的值为0.
(2)x||y||z ,只要x的值为真(非零),就不必判别y和z的值?。霰泶锸降闹滴?,只有x的值为假,才需要判别y的值,只有x和y的值同时为假才需要判别z的值 , 口诀:“一真必真” 。
?13 位运算
一、位运算符
在计算机中,数据都是以二进制数形式存放的,位运算就是指对存储单元中二进制位的运算 。C语言提供6种位运算符 。
- mysql中ext
- 在mongodb中数据的基本单位 MongoDB数据库中的基本单元为
- mongodb分片集中的三种角色包含 mongodb切片是什么意思
- 将数据保存到文件中c语言 将数据保存到mongodb
- 罗布人村天气 mysql语言具有的功能
- mysql日期yyyymmdd mysql中的日期型函数
- redis使用技巧 redis在程序中的使用
- redis编程语言 redis对应c语言
- mongodb使用方法 如何调用mongodb中的数据库
- mysql2个as
