- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 5 von 5

Thema: WARNING: array subscript is above array bounds [-Warray-bounds]

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied
    Registriert seit
    16.04.2011
    Beiträge
    78
    Hallo Peter,

    ich dachte auch an den überintelligenten Compiler, was mich lediglich verwirrte war die Tatsache, dass diese Warnung auch nach dem Einfügen einer Untersuchung der Arrayparameter auf ihre erlaubten Grenzen hin fortbestand.
    Man darf das also eher als einen Hinweis als eine Warnung verstehen...

    Mal schauen, zu was für Erleuchtungen man während der Bekanntschaft mit AtmelStudio noch so kommt
    Ich danke für die Info (evtl. melde ich mich nochmal zu Wort in diesem Thread )

    Grüße,
    Nik

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    16.04.2011
    Beiträge
    78
    Eine knappe Ergänzung zu der ganzen Geschichte:

    Auch nachdem ich eine Abfrage eingefügt habe im Hinblick auf Überprüfung der Array-Parameter und ihrer maximalen Grenzen, hat der Compiler trotzdem rumgemeckert. Und dann ist mir an einer Stelle aufgefallen, dass ich dort das '\0' -Endzeichen manuell gesetzt habe. Und das war der Grund wieso er eigentlich rumgemeckert hat!
    Aus irgendeinem Grund hat der Compiler wohl gemeint, ich schreibe ihm in den unerlaubten Bereich was rein. Ist mir bisher nicht passiert, auch in anderen Programmen mit der manuellen Setzung des Zeichens, aber naja...
    Eigentlich war der Schritt auch überflüssig (falsch jedoch nicht).

    Auf jeden Fall ist die Warnung endgültig weg *das Programm funktioniert nach wie vor, yay*

    Grüße,
    Nik

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.03.2011
    Beiträge
    1.899
    Zitat Zitat von Liquidator Beitrag anzeigen
    Auch nachdem ich eine Abfrage eingefügt habe im Hinblick auf Überprüfung der Array-Parameter und ihrer maximalen Grenzen, hat der Compiler trotzdem rumgemeckert.
    Der Compiler überprüft die Sinnhaftigkeit deiner Rechnungen nicht. Im ist egal, ob die Arraygrenzen überprüfst.
    Und dann ist mir an einer Stelle aufgefallen, dass ich dort das '\0' -Endzeichen manuell gesetzt habe. Und das war der Grund wieso er eigentlich rumgemeckert hat!
    Hat der Compiler denn keine Zeilennummer zur Warnung angegeben? Diese heiß, wie du schreibst "WARNING: array subscript is above array bounds" und nicht könnte oder so. Und da wirst du auch hinten aus deinem Array hinausgeraten sein. Ist so der Standardfehler in C:

    char text[20];
    text[20] = '\0';

    Aus irgendeinem Grund hat der Compiler wohl gemeint, ich schreibe ihm in den unerlaubten Bereich was rein.
    Unerlaubt ist das nicht, dann wäre es ein Error und das Programm würde nicht Compilieren.

    Eigentlich war der Schritt auch überflüssig (falsch jedoch nicht).
    Zeig mal die relevante Codestelle incl der Arraydeklaration. Da wird schon was falsch sein. Geh mal einfach davon aus, daß der Compiler die Sprache viel besser als du kennt. Und das ein Programm trotzdem oft funktioniert ist normal.

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

Ähnliche Themen

  1. LED Array
    Von filth im Forum Elektronik
    Antworten: 7
    Letzter Beitrag: 09.12.2008, 12:06
  2. Array
    Von infection im Forum C - Programmierung (GCC u.a.)
    Antworten: 4
    Letzter Beitrag: 26.05.2008, 21:47
  3. Array auf zweidimensionale Array
    Von semicolon im Forum C - Programmierung (GCC u.a.)
    Antworten: 1
    Letzter Beitrag: 25.05.2007, 12:48
  4. Nur Nummern in Array / nur Variablentyp byte als Array?
    Von Crashmichl im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 27.04.2006, 23:15
  5. array verlauf auf lcd..
    Von xlostx im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 8
    Letzter Beitrag: 18.03.2006, 14:33

Berechtigungen

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

LiFePO4 Speicher Test