gpt4 book ai didi

c - C 函数之间的全局变量

转载 作者:太空宇宙 更新时间:2023-11-04 08:20:40 27 4
gpt4 key购买 nike

我想弄清楚如何让这个打印函数在变量所在的函数之外工作。

int altitude = 0;

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

void loop() {
Serial.println(altitude); // This does not work.
}

int simulateAltitude() {
int a = 0;
while ( a == 0 ) {
altitude += 1;
Serial.println(altitude); // This does work.
delay(1);
}
}

我最大的问题是 void loop() 没有从 int simulateAltitude 函数的 while 循环中获取高度值。这是在使用 C 的 Arduino UNO 微 Controller 板上使用的。

我知道这是一个无限循环,它仅用于测试目的。

最佳答案

它不会从 loop() 中打印海拔高度,因为 loop() 实际上从未被调用。

记住关于 Arduino 的这一点。 setup() 函数在启动时调用一次,一旦它返回,就会一遍又一遍地调用 loop() 函数。

按照您的方式,您的 setup() 函数调用 simulateAltitude() 进入无限循环,因此它永远不会返回。它不会同时运行 simulateAltitude()loop()

你最好看一下这样的东西:

void loop() {
Serial.println(altitude);
increaseAltitude();
}

int increaseAltitude() {
altitude += 1;
delay(1);
}

关于c - C 函数之间的全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33559313/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com