Die gegebene Aufgabe besteht darin, das geschriebene C-Programm selbst auszudrucken.
Wir müssen ein C-Programm schreiben, das sich selbst druckt. Wir können also das Dateisystem in C verwenden, um den Inhalt der Datei, in die wir Code schreiben, auszudrucken, genau wie wir den Code in die Datei „code 1.c“ geschrieben haben, also öffnen wir die Datei im Lesemodus und lesen alles den Dateiinhalt und drucken Sie die Ergebnisse auf dem Ausgabebildschirm aus.
Bevor wir jedoch eine Datei im Lesemodus öffnen, müssen wir den Namen der Datei kennen, für die wir Code schreiben. Daher können wir das Makro „__FILE__“ verwenden, das standardmäßig den Pfad der aktuellen Datei zurückgibt.
Beispiel für das Makro „__FILE__“
#include<stdio.h> int main() { printf(“%s”, __FILE__); }
Das obige Programm gibt den Quellcode der Datei aus, in der sich der Code befindet.
Das Makro __FILE__ gibt eine Zeichenfolge zurück, die den Pfad des aktuellen Programms enthält, in dem es erwähnt wird.
Wenn wir es also in das Dateisystem einbinden, um die aktuelle Datei zu öffnen, in der sich der Code im schreibgeschützten Modus befindet, können wir so etwas tun:
fopen(__FILE__, "r");
Start Step 1-> In function int main(void) Declare a character c Open a FILE “file” “__FILE__” in read mode Loop do-while c != End Of File Set c = fgetc(file) putchar(c) Close the file “file” Stop
#include <stdio.h> int main(void) { // to print the source code char c; // __FILE__ gets the location // of the current C program file FILE *file = fopen(__FILE__, "r"); do { //printing the contents //of the file c = fgetc(file); putchar(c); } while (c != EOF); fclose(file); return 0; }
#include <stdio.h> int main(void) { // to print the source code char c; // __FILE__ gets the location // of the current C program file FILE *file = fopen(__FILE__, "r"); do { //printing the contents //of the file c = fgetc(file); putchar(c); } while (c != EOF); fclose(file); return 0; }
Das obige ist der detaillierte Inhalt vonDrucken Sie den Quellcode eines C-Programms selbst aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!