c++ - Arduino 数组和 if 语句

标签 c++ arrays arduino

我有一个问题。我的 Arduino 代码是:

void count (int a){
  if (a == 0) {
    int led_pin [4] = {3, 4, 5, 6};
  }

  else{
    int led_pin [2] = {4, 5, 6, 9};
  }

  for (int i = 0; i <= 7; i++){
    digitalWrite(led_pin[i], HIGH);
  }
}

然后我得到输出:

'led_pin' was not declared in this scope

如何声明数组或改变数组的值?

最佳答案

您收到错误是因为您在 if 和 else 条件内限制了 led_pin 变量的范围。

此外,您正在尝试更改整个变量,您不应该那样做。

试试这个。

void count(int a){
    int led_pin[2][4]={{3,4,5,6},{4,5,6,9}};
    if( a !=0)
    {
        a=1;
    }
    for(int i=0;i<4;i++) //I don't know why you used 7 in your code.
    {
        digitalWrite(led_pin[a][i],HIGH);
    }
}

希望对您有所帮助。

关于c++ - Arduino 数组和 if 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50370487/

相关文章:

与 Arduino 的 C# 串行通信

android - 通过 com 端口通过 USB 将 arduino 连接到 ANDROID 手机

c++ - Windows API 中的 InvalidateRect,Charles Petzold checker4.c 程序

c++ - 段错误(核心已转储)C++ 面向对象编程

java - 使用数组中的参数进行 Vararg 初始化 (Java)

c# - 将数组转换为 ObservableCollection

java - C++ std::string 到固定长度的 jstring

c++ - 我做错了什么?牡丹&QT&SHELL解密

c - C 中的指针仅在调用方法时更新一次

c++ - 从字符串中提取信息