int foo;
int bar;
extern int foo;
extern int bar;
int foo=5;
#include <stdio.h>
#include "a.c"
int main()
{
printf("%d,%d\n",foo,bar);
return 0;
}
//terminal
allen@xps:~/tmp$ ls
a.c a.h a.out b.c c.c
allen@xps:~/tmp$ rm a.out
allen@xps:~/tmp$ ls
a.c a.h b.c c.c
allen@xps:~/tmp$ gcc -c *.c
allen@xps:~/tmp$ ls
a.c a.h a.o b.c b.o c.c c.o
allen@xps:~/tmp$ gcc *.o -o a.out
allen@xps:~/tmp$ ls
a.c a.h a.o a.out b.c b.o c.c c.o
allen@xps:~/tmp$ ./a.out
5,0
如果写一个简单的Makefile
实现自动化编译:
EXEC = a.out
SRCS = a.c b.c c.c
OBJS = $(SRCS:.c=.o)
$(EXEC): $(OBJS)
cc $(OBJS) -o $(EXEC)
$(OBJS): $(INCL)
clean:
rm -f $(OBJS) $(EXEC)
其实这个笔记只是想测试一下C语言中extern
在头文件中的一点用法,还有源文件中include
源文件的效果。不总结了,直接看上面例子知道可以这样用就行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)