获取if-Statement错误

时间:2013-12-29 18:12:01

标签: c if-statement compiler-errors

我在 Keil uVision 4 中遇到了问题。如果我使用多个条件创建一个if语句,编译器会给出一条错误消息:

Build target 'HY-MiniSTM32V'
compiling main.c...
..\USER\main.c(28): error:  #29: expected an expression
..\USER\main.c(32): warning:  #12-D: parsing restarts here after previous syntax error
..\USER\main.c(32): error:  #65: expected a ";"
[...]

我的“错误代码”就是这个小片段:

while(choosed != 1){
      getDisplayPoint(&display, Read_Ads7846(), &matrix);

      if(display.x <= 130) && (display.x >= 10) && (display.y <= 18) && (display.y >= 10){
          color = 0xF800;
          choosed = 1;
      }
}

1 个答案:

答案 0 :(得分:4)

你错过了if陈述的主要内容。编译器会将您的if语句视为

(if(display.x <= 130)) && (display.x >= 10) && (display.y <= 18) && (display.y >= 10)  

这会给你一个语法错误。将其更改为

if ((display.x <= 130) && (display.x >= 10) && (display.y <= 18) && (display.y >= 10))