C语言基础学习笔记(3):关系运算符与逻辑运算符

C语言基础学习笔记(3):关系运算符与逻辑运算符

图:北极狐(Artic Fox)

Guderian出品

  1. C语言的“短路”特性:若表达式的值可由先计算的左操作数的值单独推导出来,那么将不再计算右操作数的值。“短路”特性有时很有用,如(i != 0) && (j / i > 0)使得不会发生除0的情况。

  2. C条件表达式:表达式1 ? 表达式2 : 表达式3:如果表达式1为真,则返回表达式2;否则表达式3

  3. 整数的数值溢出——上溢出:|一个数值运算结果| > |类型能表示的最大数|。进位超过最高位而发生进位丢失或进位达到最高位而改变符号位。

  4. 对于无符号数,不能随意用a - b < 0取代a < b,因为前者可能发生数值溢出,导致判断结果发生错误。

  5. 浮点数的数值溢出,不仅有上溢出还有下溢出

    上溢出:|数值运算结果| > |类型能表示的最大数|

    下溢出:|数值运算结果| < |类型能表示的最小数|,此时系统把该结果处理成机器0

  6. float赋值给int会丢失小数(不经四舍五入)。

  7. <stdlib.h>中的exit(0)终止整个程序的执行强制返回操作系统。当其参数为0时表示正常退出,非0表示程序出错。

【更多C语言系列】

本文标题:C语言基础学习笔记(3):关系运算符与逻辑运算符

文章作者:G-SS-Hacker

发布时间:2020年02月11日 - 12:54:29

最后更新:2020年02月17日 - 15:47:12

原始链接:https://G-SS-Hacker.github.io/C语言基础学习笔记(3):关系运算符与逻辑运算符/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。