我正在使用ROBOTC对我的机器人进行编程,我正在使用其他人构建的一些代码在函数中,我看到一行:
int leftDir = (left>0)*2-1;
leftDir
初始化为整数,那么>
做什么?我认为这是一个二进制移位,但我不确定。有人能解释一下吗?谢谢。
最佳答案
>
是greater than
运算符。在C中,比较的结果要么是1
表示true
,要么是0
表示false
。换句话说,上述代码在逻辑上等同于(但更紧凑):
int leftDir;
if (left > 0) {
leftDir = 1;
} else {
leftDir = -1;
}
关于c - ROBOTC-不确定>表示法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19597620/