打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
C /C 入门之编译连接

对于C++/C语言的初学者来说,了解它们的编译连接过程以及这个过程常用的工具,是一个很好的开始。

从代码源文件到机器可执行的二进制代码(Windows上为exe文件,Unix系列没有约定的后缀,但可通过shell直接调用),一个C++/C文件经历了编译和连接两个过程。编译过程将源代码转换成汇编语言或者机器语言。由于C++/C使用的是分段编译,即单个文件单独编译成中间代码,编译之后就必须把这些中间代码以及这些代码引用的库文件,连接起来,才能形成可执行文件。

Gnu的gcc全称Gnu Compiler Collection,是当下比较流行的C++/C的编译连接器。gcc原名为Gnu C语言编译器,后来很快扩展成一个编译器套件,包含C,C++,Java等语言的编译器。另外,Gnu组织又为C++语言单独发布了一个编译器,名为g++。通过执行gcc --help和g++ --help,你会发现,两者的命令行参数几乎是一样的。由于gcc支持多语言编译,如果不指名源文件的类型,gcc编译的时候,会试图通过文件名后缀来选择相应的编译器。其中.c默认C编译器,.cpp默认C++编译器。

g++/gcc都支持将编译连接过程合二为一。即通过g++ <源文件1> <源文件2> ... <源文件n> -o 目标文件或者gcc <源文件1> <源文件2> ... <源文件n> -o 目标文件的形式,直接生成可执行的目标文件。如果不通过-o选项指定目标文件的名字,默认目标文件在Windows上为a.exe,在Linux上为a.out。

下图为Linux机器上gcc --help的输出。

其中-c选项告诉编译器只编译和汇编,但不连接。-s选项告诉编译器生成汇编代码。-x选项可指定源文件类型,c,c++或者其他。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
gcc使用手册
GCC编译器(1)
Linux下如何编译、运行C程序?需要安装编译器吗? Linux/Unix社区 / 系统维...
GCC常用命令描述--linux
gcc系列教程
嵌入式Linux下最常用的C语言编译器GCC命令详解
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服