ホームページ  >  記事  >  バックエンド開発  >  C プログラム自体のソース コードを出力します。

C プログラム自体のソース コードを出力します。

WBOY
WBOY転載
2023-08-29 17:05:07962ブラウズ

C プログラム自体のソース コードを出力します。

与えられたタスクは、記述された C プログラム自体を出力することです。

それ自体を出力する C プログラムを作成する必要があります。したがって、「code 1.c」ファイルにコードを書いたのと同じように、C のファイル システムを使用して、コードを書いたファイルの内容を印刷できます。そのため、ファイルを読み取りモードで開き、すべてのコードを読み取ります。ファイルの内容を調べ、結果を出力画面に印刷します。

ただし、ファイルを読み取りモードで開く前に、コードを作成するファイルの名前を知っておく必要があります。したがって、デフォルトで現在のファイルのパスを返す「__FILE__」マクロを使用できます。

「__FILE__」マクロの例

#include<stdio.h>
int main() {
   printf(&ldquo;%s&rdquo;, __FILE__);
}

上記のプログラムは、コードが配置されているファイルのソース コードを出力します

マクロ __FILE__ は戻ります文字列。これには、現在のプログラムのパスが含まれます。

したがって、コードが読み取り専用モードになっている現在のファイルを開くためにファイル システムにマージすると、次のようなことができます -

fopen(__FILE__, "r" ) ;

アルゴリズム

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;
}

出力

rreee

以上がC プログラム自体のソース コードを出力します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。