使用逻辑运算符AND(&&)时Code Composer代码报错求助
代码错误排查与修正
你的代码存在多处语法和逻辑错误,逐一说明问题并给出修正方案:
- 赋值与相等判断混淆:用赋值运算符
=代替了相等判断符==,control = 10000是给变量赋值的操作,而非判断变量是否等于某个值,必须改成==才能实现条件判断。 - 逻辑表达式括号位置错误:原代码中
(control = 10000 || control = 80000)的括号逻辑错误,应该将每个相等判断单独包裹后,再用||连接。 - 冗余的
if关键字:第二个条件里额外添加了if,属于语法错误,直接保留判断表达式即可。 - 关键字大小写问题:C语言中
if是小写关键字,大写If会被编译器识别为普通标识符,导致报错。 - 缺少闭合括号:整个
if条件的结尾没有闭合的),属于语法不完整问题。
修正后的代码示例:
if ((control == 10000 || control == 80000) && (P2IN & 0x02) == 0) { // 这里编写循环执行的代码 }
内容的提问来源于stack exchange,提问作者Alexa Martínez
相关产品推荐
相关产品推荐

