第5章 运算符、表达式和语句
- 花括号以及被花括号括起来的部分称为块(block)。
- 赋值表达式语句的目的是把值存储在内存位置。
- 用于存储值的数据存储区域统称为数据对象(data object)。
- C语言中,整数除法结果的小数部分被丢弃,这一过程被称为截断(truncation)。
- 基本运算符:
=
、+
、-
、*
、/
。 sizeof
运算符以字节为单位返回运算对象的大小。如果运算对象是类型,则必须用圆括号括起来。- C语言规定,
sizeof
返回size_t
类型的值。C头文件系统使用typedef
把size_t
作为unsigned int
或unsigned long
的别名。 - C99新增
%zd
转换说明用于printf()
显示size_t
类型的值。 - 求模运算符(
%
)用于整数运算。求模运算符给出其左侧整数除以右侧整数的余数。 - 负数求模遵循趋零截断。
- 递增运算符
++
将其运算对象递增1。分为前缀递增和后缀递增。 - 递减运算符
--
将其运算对象递减1。分为前缀递减和后缀递减。 - 递增运算符和递减运算符具有很高的结合优先级,只有圆括号的优先级比他们高。
- 如果一个变量出现在一个函数的多个参数中或者一个变量多次出现在一个表达式中,不要对该变量使用递增或递减运算符。
- 表达式是由运算符和运算对象组成。每个表达式都有一个值。
- 语句是C程序的基本构建块,一条语句等于一条完整的计算机指令。C语言中,大部分语句都以分号结束。
- 语句的副作用是对数据对象或文件的修改。
- 序列点是程序执行的点,在该点上,所有的副作用都在进入下一步之前发生。
- 复合语句是用花括号括起来的一条或多条语句,复合语句也成为块。
- 强制类型转换:在某个量的前面放置用圆括号括起来的类型名,该类型名即是希望转换成的目标类型。圆括号和它括起来的类型名构成强制类型转换运算符。
- 函数原型是函数的声明,描述了函数的返回值和参数。