1. ホーム
  2. c++

[解決済み] C/C++のコードからコメントを削除する

2023-06-22 10:57:52

質問

C/C++ のソースファイルから、前処理をせずにコメントを削除する簡単な方法はありますか。(たとえば、gcc -E を使用できると思いますが、これはマクロを展開します。) 私はコメントを除去したソース コードが欲しいだけで、他は何も変更する必要がありません。

EDITです。

既存のツールの方を優先します。正規表現を使って自分でこれを書く必要はありませんし、コードに驚きが多すぎることを予見しています。

どのように解決するのですか?

ソースファイル上で以下のコマンドを実行します。

gcc -fpreprocessed -dD -E test.c

正しいフラグを見つけてくれたKennyTMに感謝します。念のため、結果は以下のとおりです。

test.c:

#define foo bar
foo foo foo
#ifdef foo
#undef foo
#define foo baz
#endif
foo foo
/* comments? comments. */
// c++ style comments

gcc -fpreprocessed -dD -E test.c :

#define foo bar
foo foo foo
#ifdef foo
#undef foo
#define foo baz
#endif
foo foo