问题描述
- C语言3目表达式的运算结果是放在寄存器的吗?那其他的表达式的结果呢?
-
C语言3目表达式的运算结果是放在寄存器的吗?那其他的表达式的结果呢?
解决方案
运算结果放在哪里是编译器决定的,而不是编程语言决定的。没有规定?:运算表达式的结果一定放在寄存器
解决方案二:
举例;
int i = true ? 1 : 2;
因为这是一个常量表达式,因此编译器直接得到int i = 1;
根本就不会产生判断的代码,也不用到什么寄存器。
时间: 2024-09-16 02:17:09