数据类型转换与运算符优先级:自动、强制、结合性
- 数据类型的转换 数据类型的转换分为两种:自动类型转换和强制类型转换。
'自动类型转换'是指程序运行过程中,计算机根据需要自动将一种数据类型转换成另一种数据类型,通常是将小类型转换为大类型。例如,将'int'类型的变量赋值给'double'类型的变量,程序会自动将'int'类型转换为'double'类型。
'强制类型转换'是指在程序中使用强制转换运算符将一个数据类型转换为另一个数据类型,通常是将大类型转换为小类型。例如,将'double'类型的变量强制转换为'int'类型的变量,程序会将'double'类型的值截取为整数部分并赋给'int'类型的变量。
- 运算符的优先级和结合性 运算符的优先级是指运算符在表达式中的执行顺序,优先级高的运算符先执行,优先级低的运算符后执行。运算符的结合性是指表达式中相同优先级的运算符的执行顺序,'左结合'指从左往右执行,'右结合'指从右往左执行。常见的运算符优先级从高到低依次为:
- 圆括号()
- 单目运算符(如取反运算符'!', 自增自减运算符'++', '--'等)
- 算术运算符(如乘除、加减运算符)
- 移位运算符(如左移'<<', 右移'>>')
- 按位运算符(如按位与'&', 按位或'|', 按位异或'^')
- 逻辑运算符(如逻辑与'&&', 逻辑或'||')
- 条件运算符(三目运算符'? :')
- 赋值运算符(如'+=', '-=', '*=', '/='等)
运算符的结合性一般都是从左往右,除了赋值运算符和条件运算符,赋值运算符的结合性是从右往左,条件运算符的结合性是从右往左。
原文地址: https://www.cveoy.top/t/topic/mixN 著作权归作者所有。请勿转载和采集!