2016-12-14 6 views
3

複数行コメント記号を無視する方法別の複数行コメント? Cプログラミング - 複数行のコメント

は、私は、これはエラーを作成している

/* 

/* This is my first comment */ 
printf("\n This is my first print command"); 

/* This is my second comment */ 
printf("\n This is my second print command"); 

*/ 

をすれば、私は自分のコード

/* This is my first comment */ 
printf("\n This is my first print command"); 

/* This is my second comment */ 
printf("\n This is my second print command"); 

に他のものをテストすることができるようにコメントで全体のコードを入れたいと言います。あなたは何ができるか

+2

ほとんどの現代のIDEには、マウスを1回クリックするだけで、ブロックコメントの作成に役立つツールが用意されています。以下の答えのコメントによれば、おそらくこれを行うことはできません。 –

+0

また、複数の行コメントを使用しないようにするのが良い理由です。 –

答えて

7

あなたはとなります。は、のネストされた複数行のコメントです。標準C11から直接引用

、章§6.4.9、文字定数、文字列リテラル、またはコメント内を除い

、文字/* コメントをご紹介します。このようなコメントの内容は、 マルチバイト文字を識別し、それを終了する文字の*/を見つけるためにのみ調べられます。 83)

と脚注、

83)はこのように、/* ... */コメントは入れ子にしないでください。回避策として

、あなたはをコメントアウトブロック全体を持っている

#if 0 
. 
. 
. 
. 
#endif 

として条件付きコンパイルブロックを使用することができます。

+0

@iharobそう、私はそれがイタリックで_言及された理由を述べている。 :) –

+1

ありがとう:) StackOverflowは私の学習に物事を追加しています。私は決して#を使用したことはありません..... ..... #endif。とてもありがとうございます:) –

2

#if 0 
/Code that needs to be commented/ 
#endif 
1

である私は、あなたが自分自身にコメントを含むいくつかのコードをコメントアウトするとします。

あなたはこのためにconditionnalコンパイルを使用することができます。#if 0#endif

#if 0 
/* This is my first comment */ 
printf("\n This is my first print command"); 

/* This is my second comment */ 
printf("\n This is my second print command"); 
#endif 

すべてはそれがコメントしただけの場合は、コンパイラによって無視されます。

関連する問題