括号前的表达式?

时间:2017-12-10 21:03:43

标签: c

我是编程的新手,我正在尝试创建一个简单的延迟,但我不断收到错误 - “明显调用的括号前面的表达式必须具有(指向 - ) - 函数类型”。

此代码适用于游戏,它应该稍微延迟球拍运动。

void AI(void)
{
    unsigned int delay = 1000;

    if (yR2 > yBall)
    {
        if (yR2 > RACKET ) 
        {
            delay(1000);
            yR2--; 
        }
    }

我不知道为什么这不起作用,我已经尝试了很久。有什么问题,为什么我会收到这个错误?

编辑:

我已经更新了代码。这似乎是正确的,但是当我尝试使用延迟时,整个屏幕有点延迟,而不仅仅是球拍(yR2)。

为什么会这样?

void delay(int n)
{
volatile int i;
for (i = 0 ; i < n ; i++)
  ;
}


void AI(void)
{
if (yR2 > yBall)
{
if (yR2 > RACKET) 
{
   delay(1000);
yR2--;
}
}

1 个答案:

答案 0 :(得分:4)

错误是指这一行:

delay(1000);

这里(显然)试图将delay称为函数。

但是,delay声明为:

unsigned int delay = 1000;

这只是一个数字,而不是一个函数,因此你无法调用它。