如何更改函数内部的全局布尔值



你好:D作为Arduino的一种实践,我正在尝试制作一个可以重复使用的函数,以更改循环函数中的全局变量。例如,我有两个全局布尔answer1和answer2,还有一个void函数,它的输入是boolean。然而,当我运行代码时,全局变量没有改变,我确信我没有正确理解什么。

bool answer1, answer2;
void setup() {
  answer1 = false;
  answer2 = false;
}
void loop() {    
  grading(answer1);
  grading(answer2);
}
void grading(bool _answer)
{
  _answer = true;
}

使用引用。

bool answer1, answer2;
void setup() {
  answer1 = false;
  answer2 = false;
}
void loop() {    
  grading(answer1);
  grading(answer2);
}
void grading(bool& _answer)
{
  _answer = true;
}

或指针。

bool answer1, answer2;
void setup() {
  answer1 = false;
  answer2 = false;
}
void loop() {    
  grading(&answer1);
  grading(&answer2);
}
void grading(bool* _answer)
{
  *_answer = true;
}

相关内容

  • 没有找到相关文章

最新更新