如果&&声明帮助需要新手

时间:2015-07-13 18:57:41

标签: arduino

我正在努力做到这一点,但似乎无法让它发挥作用。有人可以帮忙吗

if (tft.fillScreen == (BLACK) &&((p.x > 163 && p.x < 200)&& (p.y > 295 && p.y < 314)))
{
  tft.print("bingo")
}

我正在

  

无效使用成员函数(你忘了'()'吗?)

我一直在改变它们,但我似乎无法做到正确

只需添加,black定义在代码顶部

#define BLACK    0x0000

2 个答案:

答案 0 :(得分:0)

您正在评估的每个语句都应该用括号分开。它有助于使您的代码更易读,更易于理解。

if ((tft.fillScreen == (BLACK)) && ((p.x > 163) && (p.x < 200))&& ((p.y > 295) && (p.y < 314)))

这将检查&#34; tft.fillScreen ==(BLACK)&#34;是的,p.x介于163和200之间,p.y介于295和314之间。如果这三个条件中的任何一个不正确,则整个语句的计算结果为false。

答案 1 :(得分:0)

抱歉,但是......

  1. 什么是tft?它来自图书馆吗?哪一个?
  2. 什么是fillScreen?我认为这是一个填充屏幕的功能,而不是一个说背景颜色的变量
  3. 您错过了;
  4. 末尾的tft.print("bingo")

    现在,如果第2点是正确的(因此fillScreen是一个函数):

    这解释了错误,因为您正在调用函数,就好像它是一个变量一样。你想要得到什么?您设置为背景的最后一种颜色?如果是这样,您可能需要将其保存在变量中。

    如果第2点错误,请告诉我们tft是什么..