我有三个文件,想编译它。
第一个文件是 app.c
#include"sum.h"
int main (void)
{
sum();
return 0;
}
第二个文件是 sum.h
#ifndef SUM_H
#define SUM_H
void sum ();
#endif
第三个文件 sum.c
#include"sum.h"
void sum ()
{
return;
}
我写下这些陈述:
#ifndef SUM_H
#define SUM_H
...
...
...
#endif
防止内容的多重定义sum.h
。
在编译期间app.c
会进入预处理阶段然后sum.c
进入预处理阶段我的问题当sum.c
进入预处理器时如何知道SUM_H
myapp的最后一个文件中定义的?我认为每个源文件分别进入预处理阶段和编译阶段。