调用void函数arduino

时间:2018-10-31 02:31:00

标签: arduino

我写了以下代码:

void dice (int &x) {
   for (int i = 0;i<7;i++){
       delay (35);

       int kocka;
       kocka = random (1,7);

       randomSeed (analogRead (A7));
       delay(5); 
   }
}

void setup() {
    Serial.begin(9600);
}

void loop() {
    Serial.println(dice(int x));
};

但是,当我尝试编译它时,出现此错误:

  

“ int”之前的预期主要表达式

1 个答案:

答案 0 :(得分:1)

您可以调用void函数,但是对于您传递的参数,请不要放入“ int”。如果您考虑一下,就知道这一点,当您编写digitalWrite时,您会在引脚号前面加上“ int”吗?编写函数原型时只需要int。

您也没有定义任何变量x传递给该函数,因此您的下一个错误是“在此作用域中未声明x”,因为在循环函数中没有x变量。

接下来还有另一个问题。您的函数定义为返回void。这意味着它什么也不返回。确实,没有return语句。因此,当您删除Serial.print行中的“ int”并定义变量x时,将收到“ void value not ignore”错误。您不能从没有返回值的函数中打印返回值。

目前还不清楚您要打印什么。编辑您的问题,说出您想发生的事情,也许有人可以帮助您弄清楚该怎么做。