Ich habe diese Zeilen im Präprozessor-Ausgang.Preprozessor-Ausgabefelder
......
- 1 "test.c"
- 1 "/usr/include/stdio.h" 1 3 4
- 27 „/ usr/include/Stdio .h“3
- 4 1 "/usr/include/features.h" 1 3 4
- 374 "/usr/include/features.h" 1 3 4
..... .
Ich habe erfahren, dass in Zeile 27 in stdio.h gibt es einen Aufruf, features.h einzuschließen, aber was die anderen Zahlen 1,3,4 in beiden Zeilen definiert. kann mir jemand erklären, was genau diese verschiedenen Felder wenig aufwändig bedeutet.
wie Sie sehen
1 "/usr/include/stdio.h" 1 3 4
27 "/usr/include/stdio.h" 3 4
warum zwei Einbeziehung von stdio.h oder wenn ich falsch liege, was bedeutet das?
Danke. so von oben erklärt es, dass 1 "test.c" definiert, dass die Zeile darunter von test.c in Zeile 1 stammt. Also die nächste Zeile 1 "/ usr/include/stdio.h "1 3 4 gibt an, dass dies der Anfang einer neuen Datei ist und die Zeile unten von" /usr/include/stdio.h "in Zeile 1 mit Systemheadern stammt und als in einen impliziten externen C-Block eingeschlossen behandelt werden sollte ? Aber ist 1 "/usr/include/stdio.h" 3 4 Zeile wirklich aus der Zeile 1 von "/usr/include/stdio.h" entstanden? .. –
Ich versuche es buchstäblich zu verstehen, aber ich bin etwas verwirrt, dass das gleiche 1 "/usr/include/stdio.h" 3 4 stammt aus der Datei /usr/include/stdio.h, Wie? –