我正在尝试操作数组,但是我有点困惑。我想做类似的事情:

char myArray[10];

myArray[0] = 0xA9;
myArray[1] = 'D';
myArray[2] = 'S';
myArray[3] = "qwert";
myArray[9] = 'C';
myArray[10] = '\0';

String fullArray = String(myArray);

当然,这是行不通的,但是我想要类似的东西,如果可能的话,请操纵其中一个数组。那可能吗?

我试过了,但是无法一次输出整个字符串。
char* myStrings[] =
    {"This is string 1",
     "This is string 2",
     "This is string 3",
     "This is string 4",
     "This is string 5",
     "This is string 6"};

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

void loop(){
    for (int i = 0; i < 6; i++){
        Serial.println(myStrings[i]);
        delay(500);
    }
}

最佳答案

您的问题是因为您要定义一个字符数组,而不是字符数组(即字符串)的数组。

但是:

不要使用char*。使用String。它更容易操作,并且您不必担心指针/原始值。

例如。:

String myStrings[3] = {"a", "b", "c"};

for (int i = 0; i < 3; i++) {
    Serial.print(myStrings[i]);
}

输出:
abc

关于c++ - 使用C++在Arduino上处理数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16624399/

10-09 16:29
查看更多