C++ 条件运算符?
发布时间
阅读量:
阅读量
C++:条件运算符: ? :
- 语法规则
- 注释说明
- 具体实例
语法
expression ? expression : expression
备注
条件运算符(?:)属于三元运算符类别,其特性在于需要三个操作数参与运算。该运算符的运作机制如下:
首先,第一个操作数将被隐式地转换为布尔类型。在继续后续处理之前,系统会完成该操作数的所有副作用。
当第一个操作数的计算结果为真(即1)时,系统将对第二个操作数进行计算。
若第一个操作数的计算结果为假(即0),则系统将对第三个操作数进行计算。
条件运算符的最终结果取决于第二个或第三个操作数中被计算出的值。在条件表达式中,仅有一个操作数会被实际计算。
条件表达式具有从右向左的结合性。此外,第一个操作数必须是整型或指针类型。对于第二个和第三个操作数,需遵循以下规则:
若两个操作数属于相同类型,则最终结果也将采用该类型。
如果两个操作数均为算术类型或枚举类型,则按照标准转换规则(即常用算术转换)将其统一至通用类型。
当两个操作数均为指针类型,或者其中一个为指针而另一个为数值恒等于0的常量表达式时,则通过指针转换将其统一至通用类型。
若两个操作数值均为引用类型,则执行引用转换以统一至通用类型。
若两个操作数值
全部评论 (0)
还没有任何评论哟~
