私はCプリプロセッサを実装しています...
Wikiで、次の機能を見つけました...
- トリグラフの交換
- ラインスプライシング
- トークン化
- マクロ展開とディレクティブ処理
- ファイルインクルード
私の質問:
- 機能が不足していますか?
- 上記の機能の正しい実行順序は何ですか?(つまり、今日の実用的なプリプロセッサでは、何が行われる前に何が行われるのでしょうか?)
誰かがそれについての標準的なドキュメントを知っているなら、それも言及してください。
私はCプリプロセッサを実装しています...
Wikiで、次の機能を見つけました...
私の質問:
誰かがそれについての標準的なドキュメントを知っているなら、それも言及してください。
標準ドキュメントはC標準です!公式バージョンは無料ではありませんが、十分に正確なドラフトを見つけることができます。たとえば、C99の場合はhttp://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdfです。
対象となる章は、5.1.1.2(変換フェーズ)および6.10(前処理ディレクティブ)です。
gccドキュメントをチェックして、それらがどのように実装されているかを確認することをお勧めします:http: //gcc.gnu.org/onlinedocs/cpp/
gccのソースコードもご覧ください: http ://www.gnu.org/software/gcc/releases.html
お役に立てれば