Forum: Compiler & IDEs ???no new line at end of file???


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Alex (Gast)


Lesenswert?

Hallo,
nochmals sorry für meine cross postings, wird nicht mehr vorkommen!

Was bedeutet eigentlich "keine neue Zeile am Dateiende"?
Ich habe eigentlich die Klammern der Programme richtig gesetzt und
alles schön mit Strichpunkt (Strichpunkt pflichtig!) beendet...

Kann mir jemand verraten was die Fehlermeldung soll?

Danke

von Joerg Wunsch (Gast)


Lesenswert?

Naja, steht doch da: Deine letzte Zeile ist nicht mit einem
Newline-Zeichen beendet.  Diese Unsitte ist aus irgendwelchen Gründen
unter Windows weit verbreitet, vermutlich weil manche Editoren das
gern so abspeichern.  Wenn Du einen Hex-Editor hast, solltest Du
sehen, daß das letzte Zeichen kein 0x0a ist.

Der C-Standard spricht durchweg von einer Zeilenstruktur, und eine
Zeile endet halt mit dem Newline.  Zwar ist C an sich eine formatfreie
Sprache, aber nicht mehr wirklich, wenn man den Präprozessor mit
einbezieht: der arbeitet streng auf Zeilenbasis.  Da aber jedes
Programm erst durch den Präprozessor geht, muß es folglich aus Zeilen
aufgebaut sein (auch wenn der größte Teil dieser Zeilen durch den CPP
nicht angefaßt wird), um syntaktisch Sinn zu haben.

von Sascha Weitkunat (Gast)


Lesenswert?

Ich gehe mal davon aus dass du mit 'Strichpunkt' das Semikolon
meinst...
Eine schließende geschweifte Klammer, '}', wird in der Regel nicht
von einem solchen gefolgt, so zum Beispiel bei Funktionen. Die
Fehlermeldung, oder viel mehr Warnung, ist doch eigentlich
selbsterklärend. Am Ende deines Programmcodes möchte der Compiler halt
ein 'carriage return' und 'linefeed' sehen, '\r\n'. Geh mit dem
Cursor irgendwo in deinen Quelltext, drücke 'PgDn' darauf 'End' und
'Return', folglich am Ende der Datei eine neue Zeile beginnen, und
die Warnung verschwindet.

von Andreas S. (andreas) (Admin) Benutzerseite Flattr this


Lesenswert?

Das Problem hättest du übrigens selber lösen können, wenn du "no
newline" in die Suche eingegeben hättest.

von Alex (Gast)


Lesenswert?

Das war nur ein kleines Missverständnis zwischen mir und dem compiler.
Ich dachte, er will nicht dass ich eine neue (leere) Zeile ins Prgramm
schreibe.
"new line at end of file missing" - wäre für mich nicht so zweideutig
gewesen...

von Joerg Wunsch (Gast)


Lesenswert?

Hoppla. sorry, da hatte ich zu schnell auf den Submit-Knopf gedrückt,
und dummerweise hat sich der emacs-w3m auch noch meinen letzten
Beitrag zu diesem Thread gemerkt und den wirklich nochmal
abgeschickt...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.