2007-03-25

编译C语言代码

Views: 15616 | 2 Comments

一般我们会在某个C语言源码文件(如a.c)中使用"include"指令包含其它的文件(如b.h或者b.c).

这样设想:
// file: a.c
include "b.h"
//可能有include "b.c"
//main()

// file: b.h
// 函数声明等

// file: b.c
include "b.h"
// 函数定义
我们可以先把b.c编译为模块b.o
gcc -c b.c

然后编译a.c
gcc a.c b.o

或者我们在a.c文件中直接包含b.c那么就可以这样编译:
gcc a.c

Related posts:

  1. 有趣的 main 函数参数
  2. Libevent 2 HTTP 客户端示例
  3. 使用 jemalloc 编译过程出错的问题
  4. 用mplayer,toolame提取rmvb等视频文件中的音频为mp3
  5. Xcode 如何让 Objective C 项目链接 C++ 静态库
Posted by ideawu at 2007-03-25 22:12:31

2 Responses to "编译C语言代码"

  • 回复靳国杰: 是的, 这里只是举个例子. Reply
  • 在.c中再包含其它.c在方法上不存在错误,但是不是一个好的风格。
    在C语言的实现惯例中,.c文件用于封装在功能逻辑上较为接近的一组实现代码,并且使用.h对外提供必要的接口声明,是一种实现信息隔离和隐藏的基本手段。如果在.c中包含其它.c则违反了这一原则,也降低整个工程的清晰程度,通常不推荐使用。 Reply

Leave a Comment