75赋值表达式 1.赋值运算符:= 作用是将一个表达式的值赋给一个变量。 2.赋值表达式 ■由赋值运算符将一个变量和一个表达式连接 起来就构成了赋值表达式,它的一般形式为 变量=表达式 ˉ对赋值表达式求解的过程是:先求解赋值运算 符右侧表达式的值,然后将值赋给左边的变量, 赋值表达式的值就是被赋值的变量的值。 第七章运算符和表达式
第七章 运算符和表达式 7.5 赋值表达式 1.赋值运算符:= 作用是将一个表达式的值赋给一个变量。 2.赋值表达式 ◼ 由赋值运算符将一个变量和一个表达式连接 起来就构成了赋值表达式,它的一般形式为: 变量 = 表达式 ◼ 对赋值表达式求解的过程是:先求解赋值运算 符右侧表达式的值,然后将值赋给左边的变量, 赋值表达式的值就是被赋值的变量的值
75赋值表达式 ■例如: x=5 鬥将5赋值给变量ⅹ* y=(floa)5/2/将表达式的值(=25)赋值给变 量y ˉ注意:被赋值的变量,必须是单个变量,且必 须在赋值运算符的左边;赋值表达式又允许出 现在其它赋值表达式当中。 第七章运算符和表达式
第七章 运算符和表达式 ◼ 例如: x=5 /*将5赋值给变量x*/ y= (float)5/2 /*将表达式的值(=2.5)赋值给变 量y*/ ◼ 注意:被赋值的变量,必须是单个变量,且必 须在赋值运算符的左边;赋值表达式又允许出 现在其它赋值表达式当中。 7.5 赋值表达式
当表达式值的类型与被赋值变量的类型不 致,但都是数值型或字符型时,系统会自动地 将表达式的值转换成被赋值变量的数据类型, 然后再赋值给变量。具体规定如下: (1)实型赋予整型,舍去小数部分。 (2)整型赋予实型,数值不变,但将以浮点 形式存放。 (3)字符型赋予整型,由于字符型为一个字 节,而整型为二个字节,故将字符的ASC码 值放到整型量的低八位中,高八位为0。短整 型赋给长整型时同理。 第七章运算符和表达式
第七章 运算符和表达式 ◼ 当表达式值的类型与被赋值变量的类型不一 致,但都是数值型或字符型时,系统会自动地 将表达式的值转换成被赋值变量的数据类型, 然后再赋值给变量。具体规定如下: (1)实型赋予整型,舍去小数部分。 (2)整型赋予实型,数值不变,但将以浮点 形式存放。 (3)字符型赋予整型,由于字符型为一个字 节,而整型为二个字节,故将字符的ASCII码 值放到整型量的低八位中,高八位为0。短整 型赋给长整型时同理
75赋值表达式 (4)整型赋予字符型,只把低八位赋予字符 量。长整型赋给短整型时同理。 (5)双精度实型数据转换成单精度实型数据 时,只保留单精度的有效位数 (6)除自动转换外,C语言也允许强制转换。 数据类型强制转换的一般格式为 (要转换成的数据类型)(被转换的表达式 其中,当被转换的表达式是一个简单表达式 时,外面的一对原括号可以省略。 第七章运算符和表达式
第七章 运算符和表达式 (4)整型赋予字符型,只把低八位赋予字符 量。长整型赋给短整型时同理。 (5)双精度实型数据转换成单精度实型数据 时,只保留单精度的有效位数。 (6)除自动转换外,C语言也允许强制转换。 数据类型强制转换的一般格式为 (要转换成的数据类型)(被转换的表达式) 其中,当被转换的表达式是一个简单表达式 时,外面的一对原括号可以省略。 7.5 赋值表达式
75赋值表达式 ■例如: ( double)a鬥将变量a的值转换成 double型, 等价于( double)(a) int)(x+y)/将x+y的结果转换成int型 ( float)5/2将5转换成实型,再除以 2(=25),等价于floa)(5)/2* (floa(5/2)鬥将5整除2的结果转换成实型 (20)y/ 第七章运算符和表达式
第七章 运算符和表达式 ◼ 例如: (double)a /*将变量a的值转换成double型, 等价于(double)(a)*/ (int)(x+y) /*将x+y的结果转换成int型*/ (float)5/2 /*将5转换成实型,再除以 2(=2.5),等价于(float)(5)/2*/ (float)(5/2) /*将5整除2的结果转换成实型 (2.0)*/ 7.5 赋值表达式