0

次の行を持つexample.cファイルをコンパイルします。

#include "parse/properties/properties.h"

コンパイラは、getexample.oファイルを作成します。ヘッダーファイルへのパスはexample.oファイルに含まれていますか?またはその情報は外部ですか?

4

2 に答える 2

3

オブジェクトファイル形式は標準化されていない場合もあります(標準では「オブジェクトファイル」についても言及されていません)。コンパイラーは、デバッグ目的で#includeを挿入する場合もあれば、完全にスキップする場合もあります。

また、#includeは、テキストのプリプロセッサを使用して、標準が翻訳の最初のフェーズとしてdesrcibesするものでコンパイラによって実行されることにも注意してください。#include-directiveは、プリプロセッサに逐語的にコピーして別のファイルの内容をインプレースするように指示します。これは、実際のオブジェクトファイルが作成されるずっと前に発生します

于 2012-04-13T12:59:10.767 に答える
1

これは実装で定義されていますが、通常、デバッグオプション(gccなど)を使用してコンパイルすると、デバッグ-gを支援するためにファイルパスが含まれます。

于 2012-04-13T13:00:52.230 に答える