linux c 算术运算 赋值运算 强制类型转换 简要说明

linux c 算术运算 赋值运算 强制类型转换 简要说明
linux c 下算术运算符有以下5个:

运算符

使用形式

含义
+

单项自增或双向相加

单项自减或两项相减

*

两项相乘

/

两项相除

%

两项求余


算术运算规则:

1 +、-*、/运算符可为任何整型 浮点型的常量 变量 有返回值的函数。
2 / 两项相除,除数不能为0
3 % 运算,要求两边都必须为整型,且%后面不能跟0。
4 当进行运算时,两边数据类型一致后,得到的结果数据类型也同原数据类型一致。
例:
4.2+5.8 =10.0
18/5 =3
5 当进行运算时,两边的数据类型不一致时,则遵循类型的一般转换规则。


转换规则
(short char )-> int ->unsigned -> long -> unsigned long -> double
float -> double ->long double



linux c 赋值运算符的自动类型转换

赋值转换是将右值表达式的数据类型转换为左值表达式的数据类型,赋值转换具有强制性
例:
float m =10.1;int n =1;
int k =0;
k= m*n;
//第一步 m*n 遵循一半转换规则,得出一个float类型
//第二步 将得到的值赋值给k时,需要遵循“赋值运算符的自动类型转换”,所以系统强制将得出的结果转换为int类型
//所以赋值表达式最后输出的结果为int类型


linux c 强制类型转换

强制类型转换是靠强制类型转换运算符来实现数据类型转换。
强制类型转换也称之为显式类型转换。
强制类型转换方法 (类型名)表达式
例:
float m=1.56
int k;
k=(int)m;
//此时通过强制转换为强制丢失小数位 k的值变为1