设为首页 加入收藏

TOP

C++编译与链接(1)-编译与链接过程
2015-07-24 07:07:49 来源: 作者: 【 】 浏览:56
Tags:编译 链接 过程
大家知道计算机使用的一系列的1和0
?
那个一个C++语言程序又是如何从一个个.h和.cpp文件变成包含1和0的可执行文件呢?
?
?
?
?
?
可以认为有以下的几个阶段
?
源程序->预处理->编译和优化->生成目标文件->链接->可执行文件
?
?
?
1.预处理
?
C++的预处理是指在C++程序源代码被编译之前,由预处理器对C++程序源代码进行的处理。这个过程并不对程序的源代码进行解析。
?
这里的预处理器(preprocessor)是指真正的编译开始之前由编译器调用的一个独立程序。
?
?
?
预处理器主要负责以下的几处
?
1.宏的替换
?
2.删除注释
?
3.处理预处理指令,如#include,#ifdef
?
?
?
如我们有以下代码
?
temp.h
?
复制代码
#ifndef ? _HEADERNAME_H
#define ?_HEADERNAME_H ?1
?
#include
inline void show(char *a)
{
? ? std::cout << a<< std::endl;//annotation
}
?
#endif
复制代码
main.cpp
?
复制代码
#include "temp.h"
#define MACRO "This is a macro"
?
extern int i;
int main()
{
? ? ? ? std::cout<
? ? ? ? show(MACRO);
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇一个线程池的简单的实现 下一篇C++ Primer 学习笔记_91_用于大型..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: