H
Helmut Schellong
Guest
Am 28.09.2023 um 20:55 schrieb Sieghard Schicktanz:
Vorher:
# define HKL ccccc \\
ddd //kkkkk \\
eeeee
Nachher 1:
# define HKL ccccc ddd //kkkkk eeeee
Nachher 2:
# define HKL ccccc ddd
\'Nachher 1\' ist der Zustand nach translation phase 2: Löschen von \\NL.
Dadurch rutscht eeeee unbeabsichtigt in den Kommentar hinein und verschwindet in phase 3.
Zeilenkommentare funktionieren folglich nicht innerhalb von Zeilenverlängerungen.
Das ist doch der geltende Kontext.
Habe ich in vorhergehenden Postings erklärt.
[...]
Du konterkarierst durch Deine Argumentation:
Der cpp interessiert mich einfach gar nicht.
Der Compiler (inklusive PP) wird _grundsätzlich_ über sein Frontend aufgerufen.
G R U N D S Ã T Z L I C H !!!
Ich werde niemals einen externen PP verwenden.
Ich wüÃte gar nicht, warum überhaupt!
Ich habe die man-page zu \'cpp\' gelesen und lasse den externen cpp fallen
wie eine heiÃe Kartoffel!
Der paÃt ja gar nicht richtig! Dessen Verwendung ist risikoreich!
\'cc -E\' ist der einzig richtige Weg.
Kenne ich seit den 1980ern.
Die 5 verschieden umfangreichen Aufgaben eines C-Compilers
habe ich in meinen C-Büchern erklärt.
--
Mit freundlichen GrüÃen
Helmut Schellong
Hallo Helmut,
Du schriebst am Thu, 28 Sep 2023 08:51:33 +0200:
Am 27.09.2023 um 21:23 schrieb Sieghard Schicktanz:
Hallo Helmut,
Du schriebst am Wed, 27 Sep 2023 16:51:49 +0200:
Ich habe noch nie Zeilenkommentare //... innerhalb einer PP-Zeile
geschrieben. Sondern nur /*...*/.
Noch nie habe ich /*...*/ über Zeilenverlängerungen \\NL hinweg
geschrieben. Das wäre auch nie sinnvoll gewesen.
Geht aber alles. Du kannst auch beliebige Kommentare in
Makro-Defintionen einbauen, sauber formatiert mit \"\\NL\" (wie Du das
schreibst).
Vorher:
# define HKL cccccccccccccccc \\
ddd //kkkkkkkkkk \\
eeeeeeeeeeeeeeee
Nachher 1:
# define HKL cccccccccccccccc ddd //kkkkkkkkkk
eeeeeeeeeeeeeeee
Nachher 2:
# define HKL cccccccccccccccc ddd
Das ist aber in die Hose gegangen.
Es fehlt nun \'eeeeeeeeeeeeeeee\'.
Nee, warum? Der Kommentar hinter \"//\" bis zum Ende der Gesamtzeile fehlt
doch durchaus ordnungsgemäÃ. Aber was soll Dein \"Nachher 1\" sein? _Das_ ist
eine Zwischenaktion des Präprozessors, die nicht nach auÃen sichtbar ist.
Vorher:
# define HKL ccccc \\
ddd //kkkkk \\
eeeee
Nachher 1:
# define HKL ccccc ddd //kkkkk eeeee
Nachher 2:
# define HKL ccccc ddd
\'Nachher 1\' ist der Zustand nach translation phase 2: Löschen von \\NL.
Dadurch rutscht eeeee unbeabsichtigt in den Kommentar hinein und verschwindet in phase 3.
Zeilenkommentare funktionieren folglich nicht innerhalb von Zeilenverlängerungen.
Das ist doch der geltende Kontext.
Habe ich in vorhergehenden Postings erklärt.
[...]
Ein vom Compiler unabhängig aufrufbarer Präprozessor ist mir gänzlich
unbekannt. Es sei denn, es handelt sich um Unix-Kommandos wie \'tr\' und
ähnlich.
Du hast den \"cc\" selber genannt.
Das ist aber kein vom Compiler unabhängig aufrufbarer Präprozessor,
sondern \'cc\' IST der Compiler.
Nein, das ist auch nicht der Compiler, das ist der \"Compiler Controller\".
Du konterkarierst durch Deine Argumentation:
Ein vom Compiler unabhängig aufrufbarer Präprozessor ist mir gänzlich
unbekannt. Es sei denn, es handelt sich um Unix-Kommandos wie \'tr\' und
ähnlich.
Du hast den \"cc\" selber genannt.
Aber Du hast insofern recht, als der Präprozessor den Namen \"cpp\" hat, so
wie ich ihn oben auch aufgerufen habe.
Der cpp interessiert mich einfach gar nicht.
Der Compiler (inklusive PP) wird _grundsätzlich_ über sein Frontend aufgerufen.
G R U N D S Ã T Z L I C H !!!
Ich werde niemals einen externen PP verwenden.
Ich wüÃte gar nicht, warum überhaupt!
Ich habe die man-page zu \'cpp\' gelesen und lasse den externen cpp fallen
wie eine heiÃe Kartoffel!
Der paÃt ja gar nicht richtig! Dessen Verwendung ist risikoreich!
\'cc -E\' ist der einzig richtige Weg.
Ein \"cc -E\" wäre auch gegangen, dann
wird gleich nach dem Präprozessor-Aufruf aufgehört und dessen Ausgabe
landet auf dem Bildschirm.
Kenne ich seit den 1980ern.
Die 5 verschieden umfangreichen Aufgaben eines C-Compilers
habe ich in meinen C-Büchern erklärt.
--
Mit freundlichen GrüÃen
Helmut Schellong