C Program to Display its own Source Code as Output

To understand this example, you should have the knowledge of the following C programming topics:


Though this problem seems complex, the concept behind this program is straightforward; display the content from the same file you are writing the source code.

Procedure to display its own source code in C programming

In C programming, there is a predefined macro named __FILE__ that gives the name of the current input file.

#include <stdio.h>
int main() {

   // location the current input file.
   printf("%s",__FILE__);
}

C program to display its own source code

#include <stdio.h>
int main() {
    FILE *fp;
    int c;
   
    // open the current input file
    fp = fopen(__FILE__,"r");

    do {
         c = getc(fp);   // read character 
         putchar(c);     // display character
    }
    while(c != EOF);  // loop until the end of file is reached
    
    fclose(fp);
    return 0;
}
Did you find this article helpful?

Your builder path starts here. Builders don't just know how to code, they create solutions that matter.

Escape tutorial hell and ship real projects.

Try Programiz PRO
  • Real-World Projects
  • On-Demand Learning
  • AI Mentor
  • Builder Community