ホームページ  >  記事  >  バックエンド開発  >  C言語で条件付きコンパイルとは何を意味しますか?

C言語で条件付きコンパイルとは何を意味しますか?

WBOY
WBOY転載
2023-09-05 17:29:05667ブラウズ

C言語で条件付きコンパイルとは何を意味しますか?

C プログラミング言語には、プログラム コードの選択的コンパイルを制御する命令がいくつかあります。それらは次のとおりです -

  • ##if
  • #else
  • #elif
  • #endif

##if の一般的な形式は次のとおりです。 -

#if constant_expression
   statement sequence
#endif

#else は、C のキーワード else と同様に機能します。

#elif は「else if」を意味し、if else-if コンパイル チェーンを確立します。

とりわけ、#if はコードを「コメントアウト」する代わりの手段を提供します。

例:

#if 0
   printf("#d", total);
#endif

ここでは、コンパイラは printf("#d", total);

##ifdef および #ifndef

# を無視します。 ifdef は「定義されている場合」を意味し、#endif で終わります。

#ifdef は「定義されていない場合」を意味します。

#undef

#undef は、以前に定義された定義を削除します。

#line

#line は、現在コンパイルされているコードの行番号を含む __LINE__ と、ソースを含むソース ファイル __FILE__ の内容を変更します。コンパイル中のファイル 名前の文字列。これらは両方ともコンパイラで事前定義された識別子です。

#pragma

#プラグマ ディレクティブは、さまざまなディレクティブをコンパイラに提供できるようにする実装定義のディレクティブです。

次は C プログラムです

#ifdef、#ifndef、#else、および #endif を示す例

- ライブ デモ

# include <stdio.h>
# define a 10
void main(){
   #ifdef a
   printf("</p><p> Hello I am here..");
   #endif
   #ifndef a
   printf("</p><p> Not defined ");
   #else
   printf("</p><p> R u There ");
   #endif
}

出力

上記のプログラムを実行すると、次の結果が生成されます -

Hello I am here..
R u There

以上がC言語で条件付きコンパイルとは何を意味しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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