<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende]]></title><description><![CDATA[<p>moin, ich wollt mal raus reinem interesse wissen, warum manche (vll gar alle) kompiler meckern, wenn man hinter die letzte codezeile keine leere zeile klemmt. Immerhin erkennt der kompiler den fehler ja auch und könnte, wenn es ihn so stark stört selbst eine zeile anhängen. Andererseits ist mir nicht bekannt, dass es in c++ relevant ist wieviel leer zeilen man zwischen seinem code hat. eine zeile ist ja spätestens bei einem semikolon zu ende.</p>
<p>mfg Emperor_L0ser</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/138996/warum-eigentlich-gt-warnung-kein-newline-am-dateiende</link><generator>RSS for Node</generator><lastBuildDate>Sun, 30 Aug 2026 10:38:29 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/138996.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 02 Mar 2006 21:05:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Thu, 02 Mar 2006 21:05:20 GMT]]></title><description><![CDATA[<p>moin, ich wollt mal raus reinem interesse wissen, warum manche (vll gar alle) kompiler meckern, wenn man hinter die letzte codezeile keine leere zeile klemmt. Immerhin erkennt der kompiler den fehler ja auch und könnte, wenn es ihn so stark stört selbst eine zeile anhängen. Andererseits ist mir nicht bekannt, dass es in c++ relevant ist wieviel leer zeilen man zwischen seinem code hat. eine zeile ist ja spätestens bei einem semikolon zu ende.</p>
<p>mfg Emperor_L0ser</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007159</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007159</guid><dc:creator><![CDATA[Emperor_L0ser]]></dc:creator><pubDate>Thu, 02 Mar 2006 21:05:20 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Thu, 02 Mar 2006 21:08:34 GMT]]></title><description><![CDATA[<p>Steht hier irgendwo im forum..<br />
mal suchen aber ich galub des war weil or jahren ein compiler &quot;kaputte&quot;<br />
executables erzeugt aht wenn &quot;\nEOF&quot; nicht dei letzen zwei zeichen waren...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007160</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007160</guid><dc:creator><![CDATA[branleb]]></dc:creator><pubDate>Thu, 02 Mar 2006 21:08:34 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Thu, 02 Mar 2006 21:10:04 GMT]]></title><description><![CDATA[<p>EOF ist kein Zeichen :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007161</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007161</guid><dc:creator><![CDATA[.filmor]]></dc:creator><pubDate>Thu, 02 Mar 2006 21:10:04 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Thu, 02 Mar 2006 22:30:01 GMT]]></title><description><![CDATA[<p>Ist das nicht im C++ Standard definiert, das am Ende eine Leerzeile sein soll?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007201</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007201</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Thu, 02 Mar 2006 22:30:01 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Thu, 02 Mar 2006 23:05:25 GMT]]></title><description><![CDATA[<p>EOF = End Of File<br />
du hast zwar echt es ist eigentlich kein zeichen aber es wird in C++ wie eins beahndelt...<br />
naja aufjdenfall das letzet zeichen for dem EOF muss halöt ein newline sein..<br />
Mfg SHade37337</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007223</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007223</guid><dc:creator><![CDATA[branleb]]></dc:creator><pubDate>Thu, 02 Mar 2006 23:05:25 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Thu, 02 Mar 2006 23:28:07 GMT]]></title><description><![CDATA[<p>Artchi schrieb:</p>
<blockquote>
<p>Ist das nicht im C++ Standard definiert, das am Ende eine Leerzeile sein soll?</p>
</blockquote>
<p>jo der rest hier is natürlich quatsch</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007232</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007232</guid><dc:creator><![CDATA[hfghfh]]></dc:creator><pubDate>Thu, 02 Mar 2006 23:28:07 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 08:51:44 GMT]]></title><description><![CDATA[<p>shade37337 schrieb:</p>
<blockquote>
<p>EOF = End Of File<br />
du hast zwar echt es ist eigentlich kein zeichen aber es wird in C++ wie eins beahndelt...<br />
naja aufjdenfall das letzet zeichen for dem EOF muss halöt ein newline sein..<br />
Mfg SHade37337</p>
</blockquote>
<p>du kannst froh sein, dass das menschliche gehirn nur den ersten und letzten buchstabe eines wortes wissen muss, um sich dann irgendetwas zusammenzubauen! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007350</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007350</guid><dc:creator><![CDATA[ser1al]]></dc:creator><pubDate>Fri, 03 Mar 2006 08:51:44 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 09:10:05 GMT]]></title><description><![CDATA[<p>hfghfh schrieb:</p>
<blockquote>
<p>Artchi schrieb:</p>
<blockquote>
<p>Ist das nicht im C++ Standard definiert, das am Ende eine Leerzeile sein soll?</p>
</blockquote>
<p>jo der rest hier is natürlich quatsch</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> Recht hast du :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007369</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007369</guid><dc:creator><![CDATA[evilissimo]]></dc:creator><pubDate>Fri, 03 Mar 2006 09:10:05 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 09:19:53 GMT]]></title><description><![CDATA[<p>Bei Codeblocks kann man einstellen, dass eine Leerzeile angehangen wird, wenn diese nicht vorhanden ist, zumindest im aktuellen SVN-Release.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007381</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007381</guid><dc:creator><![CDATA[mantiz]]></dc:creator><pubDate>Fri, 03 Mar 2006 09:19:53 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 09:30:18 GMT]]></title><description><![CDATA[<p>Ein Quelltext ist eine Textdatei, und eine solche besteht aus Zeilen, und Zeilen haben ein Ende zu haben, ganz einfach <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007398</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007398</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Fri, 03 Mar 2006 09:30:18 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 10:12:15 GMT]]></title><description><![CDATA[<p>Ein Ende hat wohl jede Zeile. Stellt sich nur die Frage, ob man als letztes noch eine vollkommen leere Zeile der Länge 0 haben muss, oder ob das vielleicht nur wegen dem include-Gefrickel so verlangt wird. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007442</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007442</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Fri, 03 Mar 2006 10:12:15 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 10:18:10 GMT]]></title><description><![CDATA[<p>Optimizer schrieb:</p>
<blockquote>
<p>[...] oder ob das vielleicht nur wegen dem include-Gefrickel so verlangt wird. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
<p>Jetzt geht das schon wieder los ... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007448</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007448</guid><dc:creator><![CDATA[mantiz]]></dc:creator><pubDate>Fri, 03 Mar 2006 10:18:10 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 10:29:33 GMT]]></title><description><![CDATA[<p>Optimizer schrieb:</p>
<blockquote>
<p>Ein Ende hat wohl jede Zeile. Stellt sich nur die Frage, ob man als letztes noch eine vollkommen leere Zeile der Länge 0 haben muss, oder ob das vielleicht nur wegen dem include-Gefrickel so verlangt wird. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
<p>Eine Textdatei mit \n am Ende hat keine vollkommen leere Zeile am Ende, sondern eine Datei _ohne_ \n am Ende ist keine gültige Textdatei! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007461</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007461</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Fri, 03 Mar 2006 10:29:33 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 14:19:32 GMT]]></title><description><![CDATA[<p>Optimizer schrieb:</p>
<blockquote>
<p>Ein Ende hat wohl jede Zeile.</p>
</blockquote>
<p>Richtig. Etwas, das kein Ende hat, ist damit keine Zeile.</p>
<blockquote>
<p>Stellt sich nur die Frage, ob man als letztes noch eine vollkommen leere Zeile der Länge 0 haben muss,</p>
</blockquote>
<p>Das ist keine Zeile.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1007688</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1007688</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Fri, 03 Mar 2006 14:19:32 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 20:49:55 GMT]]></title><description><![CDATA[<p>ich will ja ned mit alten &quot;volksliedern&quot; kommen, aber alles hat ein ende, nur die wurst hat 2...</p>
<p>das es so definiert ist war mir schon klar, der compiler wird nichts in frage stellen, was nicht definiert wurde. aber warum es so definiert wurde , da hat niemand ne ahnung, ausser das es eventuell mit den include dateien zusammenhängen könnte. Die entwickler von c/c++ müssen sich ja schon was bei gedacht haben <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1008031</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1008031</guid><dc:creator><![CDATA[Emperor_L0ser]]></dc:creator><pubDate>Fri, 03 Mar 2006 20:49:55 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Fri, 03 Mar 2006 22:23:32 GMT]]></title><description><![CDATA[<p>Bashar schrieb:</p>
<blockquote>
<blockquote>
<p>Stellt sich nur die Frage, ob man als letztes noch eine vollkommen leere Zeile der Länge 0 haben muss,</p>
</blockquote>
<p>Das ist keine Zeile.</p>
</blockquote>
<p>Beweise es. Wenn ich in einem beliebigen Texteditor in diese nicht-Zeile gehe, wird mir deren Nummer angezeigt. Mein C#-Code compiliert, obwohl die letzte nicht-Zeile kein LF hat (aber nicht unwichtig für die Korrektheit des Codes ist). Zeilenvorschub lässt sich auch nicht salopp mit Zeilenende übersetzen, weil es einfach nur eine Markierung ist, die sinngemäß bedeutet, dass man an dieser Stelle nach unten in die nächste Zeile rutscht, dass alles, was danach folgt, in der nächsten Zeile steht. Zeilenwechsel != Zeilenende. Die Behauptung, dass eine Zeile ohne LF kein Ende hat (oder keine Zeile ist), ist sehr gewagt.</p>
<p>Wer definiert das? Muss demzufolge ein Text einen abschließenden Absatzwechsel haben? Habe ich auch noch nie gehört, wäre aber die selbe Logik. Ich beende auch dieses Posting gerade nicht durch einen abschließenden Zeilenwechsel.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1008118</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1008118</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Fri, 03 Mar 2006 22:23:32 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Sat, 04 Mar 2006 00:35:01 GMT]]></title><description><![CDATA[<p>Eine Zeile ist/war definiert als Folge von Zeichen und einem terminalen '\n'. Vergleiche es mit direkt aufeinander folgende C-String im Speicher.</p>
<p>Die meisten Texteditoren sehen ein EOF allerdings auch als Zeichenende an. Viele halten es noch nicht einmal für nötig die Zeile zu beeden bevor sie sie abspeichern.</p>
<p>Fals du aber einmal unter einem primitiven Datiesystem arbeiten solltest das dir nicht die Dateilänge angibt dann wäre das Lesen einer solchen fehlerhaften Textdatei so fatal wie ein C-String ohne finales '\0'.</p>
<p>PS: Es ist nicht, dass ich ein finales '\n' für wichtig halte. Ich wollte nur die Idee dahinter erklären.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1008177</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1008177</guid><dc:creator><![CDATA[Ben04]]></dc:creator><pubDate>Sat, 04 Mar 2006 00:35:01 GMT</pubDate></item><item><title><![CDATA[Reply to Warum eigentlich? --&amp;gt; Warnung: Kein Newline am Dateiende on Sat, 04 Mar 2006 17:40:42 GMT]]></title><description><![CDATA[<p>Optimizer schrieb:</p>
<blockquote>
<p>Bashar schrieb:</p>
<blockquote>
<blockquote>
<p>Stellt sich nur die Frage, ob man als letztes noch eine vollkommen leere Zeile der Länge 0 haben muss,</p>
</blockquote>
<p>Das ist keine Zeile.</p>
</blockquote>
<p>Beweise es. Wenn ich in einem beliebigen Texteditor in diese nicht-Zeile gehe, wird mir deren Nummer angezeigt.</p>
</blockquote>
<p>Auf deutsch, du gehst in 2 bis 3 Texteditoren, die du kennst, in diese Zeile ... tolle Begründung.</p>
<blockquote>
<p>Mein C#-Code compiliert, obwohl die letzte nicht-Zeile kein LF hat (aber nicht unwichtig für die Korrektheit des Codes ist).</p>
</blockquote>
<p>Wir reden doch über C++, oder nicht? Meditier mal über folgenden Ausschnitt aus dem C99-Draft:</p>
<pre><code>7.19.2  Streams

       [#1] Input and output, whether to or from  physical  devices
       such  as  terminals  and  tape drives, or whether to or from
       files supported on structured storage  devices,  are  mapped
       into logical data streams, whose properties are more uniform
       than their various inputs and outputs.  Two forms of mapping
       are supported, for text streams and for binary streams.209)

       [#2] A text stream is  an  ordered  sequence  of  characters
       composed  into  lines,  each line consisting of zero or more
       characters plus a terminating new-line  character.   Whether
       the  last  line requires a terminating new-line character is
       implementation-defined.  Characters may have  to  be  added,
       altered,  or  deleted  on  input  and  output  to conform to
       differing conventions for  representing  text  in  the  host
       environment.    Thus,   there   need  not  be  a  one-to-one
       correspondence between the characters in a stream and  those
       in  the  external  representation.  Data read in from a text
       stream will necessarily compare equal to the data that  were

       ____________________

       209An  implementation  need  not  distinguish  between  text
          streams and binary streams.  In such  an  implementation,
          there need be no new-line characters in a text stream nor
          any limit to the length of a line.

       7.19.1                     Library                    7.19.2

       WG14/N869   Committee Draft  --  January 18, 1999        299

       earlier written out to that stream only if: the data consist |
       only of  printing  characters  and  the  control  characters
       horizontal  tab  and  new-line;  no  new-line  character  is
       immediately preceded  by  space  characters;  and  the  last
       character is a new-line character.  Whether space characters
       that are written out immediately before a new-line character
       appear when read in is implementation-defined.
</code></pre>
<p>Du wirst feststellen, dass der C-Standard sich große Mühe gibt, die exotischsten Textstreamformate zu unterstützen, denk z.B. an Lochkarten und dergleichen. Und von dem Standpunkt aus gesehen, von kleinstem gemeinsamen Nenner, ist meine Aussage gemeint.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1008646</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1008646</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Sat, 04 Mar 2006 17:40:42 GMT</pubDate></item></channel></rss>