- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 9 von 9

Thema: String initialisieren ohne 0 ?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    18.03.2011
    Beiträge
    8
    naja.... ob er jetzt Strings nutzt oder nicht, ist ihm überlassen - wenn er weiß, dass es x Zeichen sind, kommt er auch ohne \0 aus...
    statt vergleiche solange bis \0 in einem String erreicht kann man auch irgendwie sowas machen...

    //a sei die Eingabe, b sei das fest gespeicherte, x sei die bekannte Länge von b
    for (i = 0; i < x; i++) {if (a[i] != b[i]) || (a[i] == '\0') return false;}
    if (a[x] != '\0') return false;
    return true;

    AAAAABäääääär für die Eingabe der Daten:
    pass bei C-Code auf, man weiß nie, ob alle Compiler (Windows/Linux/..., offiziell/alternative/...) die Spezifikationen perfekt einhalten...
    nicht dass ein Compiler meckert, weil es für ihn 6 Zeichen sind, einer das einfach richtig abarbeitet (\0 wegschmeißen) und ein anderer es verbockt es (hängt \0 an und verschiebt alles)
    (letztens erst nen Compiler geschrieben, man glaubt nicht was eine Umstellung an der Spezifikation bewirken kann)

    also lieber statt "Hallo", was zurechtgeschnitten werden müsste,
    ein sauberes {'H',...,'o'}, das Char[] einfach als Byte[] interpretiert...

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Karlsruhe
    Alter
    37
    Beiträge
    1.225
    Naja, dann kann man das Programmieren auch gleich sein lassen, wenn man sich nicht auf die Sprachspezifikation stützen (kann). Der Standard sagt klar aus, dass nur der Speicher des Arrays beschrieben wird, alles andere ist ein Fehler im Compiler.

    mfG
    Markus

    PS: http://www.dclc-faq.de/kap5.htm#5.20

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen