3 つのファイルがあり、それをコンパイルしたいと考えています。
最初のファイルは app.c です
#include"sum.h"
int main (void)
{
sum();
return 0;
}
2 番目のファイルは sum.h です。
#ifndef SUM_H
#define SUM_H
void sum ();
#endif
そして 3 番目のファイル sum.c
#include"sum.h"
void sum ()
{
return;
}
そして私はこれらの声明を書きます:
#ifndef SUM_H
#define SUM_H
...
...
...
#endif
のコンテンツの多重定義を防ぐためsum.h
。
コンパイル中app.c
に、前処理段階に入り、次に前sum.c
処理段階に入ります。私の質問は、プリプロセッサが myapp の最後のファイルで定義されてsum.c
いることをどのように知っているかということです。SUM_H
各ソースファイルは、前処理段階とコンパイル段階に個別に入ると思います。