我的主力博客:半亩方塘
数据类型、运算符和表达式
1、B
字节, b
位, 1B = 8b
2、一个字节保存一个字符,两个字节 保存 一个汉字
3、long double
一般是 10 个字节长
4、声明变量是初始化变量的最好时机
5、float
型数据提供 7 为有效数字,double
型数据提供 16 位有效数字,使用不当会导致舍入误差,例如:
结果为:
6、实型数据在内存中的存储格式
7、单精度实型常量 123.45f、 123.45F
长双精度型常量 123.45l、123.45L
8、特别注意的字符常数
\ooo
八进制数
\xhh
十六进制数
9、C 语言内部用 \0
表示字符串的结束
10、宏常量也称符号常量,一般采用 大写字母表示:
#define 标识符 字符串
—— 不是语句,而是一种编译预处理命令
11、判断某一年是否是闰年的条件:
能被 400 整除
或者
能被 4 整除但不能被 100 整除
(year % 400 == 0) || ((year % 4 == 0) && (year % 100 != 0))
12、浮点数转为整数,会 丢失小数部分, 非四舍五入
13、字符串与数值类型之间的转换
int i = "123";
—— 错误的
atof(), atoi(), atol()
—— 将字符串转换为 double
、int
和 long
,定义在 stdlib.h
中
sprintf()
—— 可以把各种类型的数值转换为字符串,定义在 stdio.h
中
14、从范围较大的数据类型转换为范围较小的数据类型可能会产生警告,可以利用类型强转消除这种警告:(类型)表达式
15、逗号表达式 作为一个整体,它的 值为最后一个表达式的值
16、sizeof()
是 C 语言的 运算符,不是函数调用
17、 多数运算符是左结合性
少数是右结合性:一元运算符、赋值运算符、条件运算符