(C) String array

Aus TippvomTibb
Version vom 12. August 2022, 12:37 Uhr von Chris T. Ludwig (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „=Allgemeines= String in einem Array ist in C immer wieder ein Fallstrick, zumindest bei mir. Ich benutze in meinen Prograemmchen schon mal ein String-Array um…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Allgemeines

String in einem Array ist in C immer wieder ein Fallstrick, zumindest bei mir.

Ich benutze in meinen Prograemmchen schon mal ein String-Array um Strings zu vergleichen. Das sieht z.B. dann so aus.

    uint8_t direction=0; // 1 means down, out; 2 means up, in
    const char directions1[3][6]={"down","out","on"};
    const char directions2[3][6]={"up","in","off"};
    const char directions3[3][6]={"halt","stop","stopp"};
    payloadStr.toLowerCase();
    //MQTTClient.publish(outRawTopic.c_str(), payloadStr.c_str());

    for(uint8_t i=0;sizeof(directions1);i++){
      if (strcmp(payloadStr.c_str(),*(directions1+i))==0)direction=1;
    }
    for(uint8_t i=0;sizeof(directions2);i++){
      if (strcmp(payloadStr.c_str(),*(directions2+i))==0)direction=2;
    }
    for(uint8_t i=0;sizeof(directions2);i++){
      if (strcmp(payloadStr.c_str(),*(directions3+i))==0)direction=3;
    }

Quelle

gute Quelle