次の行を持つexample.cファイルをコンパイルします。
#include "parse/properties/properties.h"
コンパイラは、getexample.oファイルを作成します。ヘッダーファイルへのパスはexample.oファイルに含まれていますか?またはその情報は外部ですか?
次の行を持つexample.cファイルをコンパイルします。
#include "parse/properties/properties.h"
コンパイラは、getexample.oファイルを作成します。ヘッダーファイルへのパスはexample.oファイルに含まれていますか?またはその情報は外部ですか?
オブジェクトファイル形式は標準化されていない場合もあります(標準では「オブジェクトファイル」についても言及されていません)。コンパイラーは、デバッグ目的で#includeを挿入する場合もあれば、完全にスキップする場合もあります。
また、#includeは、テキストのプリプロセッサを使用して、標準が翻訳の最初のフェーズとしてdesrcibesするものでコンパイラによって実行されることにも注意してください。#include-directiveは、プリプロセッサに逐語的にコピーして別のファイルの内容をインプレースするように指示します。これは、実際のオブジェクトファイルが作成されるずっと前に発生します
これは実装で定義されていますが、通常、デバッグオプション(gccなど)を使用してコンパイルすると、デバッグ-g
を支援するためにファイルパスが含まれます。