> 백엔드 개발 > C++ > C 프로그램 자체의 소스 코드 인쇄

C 프로그램 자체의 소스 코드 인쇄

WBOY
풀어 주다: 2023-08-29 17:05:07
앞으로
1048명이 탐색했습니다.

C 프로그램 자체의 소스 코드 인쇄

주어진 작업은 작성된 C 프로그램 자체를 인쇄하는 것입니다.

스스로 인쇄하는 C 프로그램을 작성해야 합니다. 따라서 "code 1.c" 파일에 코드를 작성하는 것처럼 C의 파일 시스템을 사용하여 코드를 작성한 파일의 내용을 인쇄할 수 있으므로 파일을 읽기 모드로 열고 파일 전체를 읽습니다. 내용을 확인하고 결과를 출력 화면에 인쇄합니다.

그러나 읽기 모드에서 파일을 열기 전에 코드를 작성 중인 파일의 이름을 알아야 합니다. 따라서 기본적으로 현재 파일의 경로를 반환하는 "__FILE__" 매크로를 사용할 수 있습니다.

"__FILE__" 매크로의 예

#include<stdio.h>
int main() {
   printf(&ldquo;%s&rdquo;, __FILE__);
}
로그인 후 복사

위 프로그램은 코드가 있는 파일의 소스 코드를 인쇄합니다.

매크로 __FILE__은 언급된 현재 프로그램의 경로가 포함된 문자열을 반환합니다.

그래서 코드가 읽기 전용 모드인 현재 파일을 열기 위해 파일 시스템에 병합할 때 다음과 같이 할 수 있습니다. -

fopen(__FILE__, "r");

Algorithm

Start
Step 1-> In function int main(void)
   Declare a character c
   Open a FILE &ldquo;file&rdquo; &ldquo;__FILE__&rdquo; in read mode
   Loop do-while c != End Of File
      Set c = fgetc(file)
      putchar(c)
   Close the file &ldquo;file&rdquo;
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;
}
로그인 후 복사
로그인 후 복사

Output

#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;
}
로그인 후 복사
로그인 후 복사

위 내용은 C 프로그램 자체의 소스 코드 인쇄의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿