没有合适的资源?快使用搜索试试~ 我知道了~
首页GCC中文手册:C/C++编译器详解与选项指南
GCC中文手册是一份详细介绍GNU工程C和C++编译器gcc和g++的重要文档,针对版本egcs-1.1.2。这份手册主要关注于编译器选项的解释,并提供编译过程的概述。它指出,gcc和g++虽然都是由GNU工程提供的工具,但它们针对不同类型的源文件有不同的默认行为。gcc处理C源文件时,会将其预处理后的结果视为C代码,而g++则处理C++源文件,同样进行预处理、编译和汇编。 手册强调,源文件的后缀名对编译器处理方式有决定性影响,例如.c代表C源程序,.cc和.cxx用于C++,.m用于Objective-C。预处理后的C/C++源文件分别使用.i和.ii扩展名。汇编语言源文件使用.s和.S,其中.S会在预处理阶段被处理。此外,.h文件通常是预处理器文件,不直接作为命令行参数。 值得注意的是,该手册并不作为实时更新文档,而是依赖于Info文件和`gcc`或`UsingandPortingGNUCC(forversion 2.0)`等更详尽的 Texinfo 原始文档,因为GNU工程认为man手册可能过时,而这些Info文件提供了最新和全面的信息。因此,如果需要获取最新的编译器使用和功能细节,用户应查阅Info文档。 GCC中文手册为用户提供了关于如何正确配置和使用gcc和g++编译器的基本指南,帮助开发者理解源文件处理流程和选项的含义,以便高效地在Linux环境中进行C和C++编程。随着技术的发展,推荐始终查阅最新版本的Info文档以确保获取最准确和全面的信息。
资源详情
资源推荐
GCC中文手册
-fcond-mismatch
允许条件表达式的第二和第三个参数的类型不匹配.这种表达式的值是void.
-fthis-is-variable
允许对this赋值(仅对C++).合并用户自定义的自由存储管理机制到C++后,使可赋值的 `this'显
得不合时宜.因此,默认情况下,类成员函数内部对this赋值是无效操作.然而为了 向后兼容,你可以
通过`-fthis-is-variable'选项使这种操作有效.
-funsigned-char
把char定义为无符号类型,如同unsigned char.
各种机器都有自己缺省的char类型.既可能是unsigned char也可能是signed char .
理想情况下,当依赖于数据的符号性时,一个可移植程序总是应该使用signed char或unsigned
char.但是许多程序已经写成只用简单的char,并且期待这是有符号数(或者无符号数,具体情况取
决于 编写程序的目标机器).这个选项,和它的反义选项,使那样的程序工作在对应的默认值上.
char的类型始终应该明确定义为signed char或unsigned char,即使 它表现的和其中之一完全
一样.
-fsigned-char
把char定义为有符号类型,如同signed char.
这个选项等同于`-fno-unsigned-char',他是the negative form of `-funsigned-
char'的相反选项.同样, `-fno-signed-char'等价于 `-funsigned-char'.
-fsigned-bitfields
-funsigned-bitfields
-fno-signed-bitfields
-fno-unsigned-bitfields
如果没有明确声明`signed'或`unsigned'修饰符,这些选项用来定义有符号位域 (bitfield)或
无符号位域.缺省情况下,位域是有符号的,因为他们继承的基本整数类型,如int,是 有符号数.
然而,如果指定了`-traditional'选项,位域永远是无符号数.
file:///E|/BOOK/教程资料/Linux/Linhan 搜集整理 QQ-3335231 E-mail - ningyuanbin@163.com.htm (10 of 54)2005-7-9 9:41:48
GCC中文手册
-fwritable-strings
把字符串常量存储到可写数据段,而且不做特别对待.这是为了兼容一些老程序,他们假设字符串常
量是可写的. `-traditional'选项也有相同效果.
篡改字符串常量是一个非常糟糕的想法; ``常量''就应该是常量.
预处理器选项(Preprocessor Option)
下列选项针对C预处理器,预处理器用在正式编译以前,对C 源文件进行某种处理.
如果指定了`-E'选项, GCC只进行预处理工作.下面的某些选项必须和`-E'选项一起才 有意义,因为他们的
输出结果不能用于编译.
-include file
在处理常规输入文件之前,首先处理文件file,其结果是,文件file的内容先得到编译. 命令行上
任何`-D'和`-U'选项永远在`-include file'之前处理, 无论他们在命令行上的顺序如何.然而
`-include'和`-imacros'选项按书写顺序处理.
-imacros file
在处理常规输入文件之前,首先处理文件file,但是忽略输出结果.由于丢弃了文件file的 输出内
容, `-imacros file'选项的唯一效果就是使文件file中的宏定义生效, 可以用于其他输入文
件.在处理`-imacrosfile'选项之前,预处理器首先处理`-D' 和`-U'选项,并不在乎他们在命令
行上的顺序.然而`-include'和 `-imacros'选项按书写顺序处理.
-idirafter dir
把目录dir添加到第二包含路径中.如果某个头文件在主包含路径(用`-I'添加的路径)中没有 找
到,预处理器就搜索第二包含路径.
-iprefix prefix
指定prefix作为后续`-iwithprefix'选项的前缀.
-iwithprefix dir
把目录添加到第二包含路径中.目录名由prefix和dir合并而成,这里 prefix被先前的`-
file:///E|/BOOK/教程资料/Linux/Linhan 搜集整理 QQ-3335231 E-mail - ningyuanbin@163.com.htm (11 of 54)2005-7-9 9:41:48
剩余53页未读,继续阅读
liu447862556
- 粉丝: 6
- 资源: 29
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++多态实现机制详解:虚函数与早期绑定
- Java多线程与异常处理详解
- 校园导游系统:无向图实现最短路径探索
- SQL2005彻底删除指南:避免重装失败
- GTD时间管理法:提升效率与组织生活的关键
- Python进制转换全攻略:从10进制到16进制
- 商丘物流业区位优势探究:发展战略与机遇
- C语言实训:简单计算器程序设计
- Oracle SQL命令大全:用户管理、权限操作与查询
- Struts2配置详解与示例
- C#编程规范与最佳实践
- C语言面试常见问题解析
- 超声波测距技术详解:电路与程序设计
- 反激开关电源设计:UC3844与TL431优化稳压
- Cisco路由器配置全攻略
- SQLServer 2005 CTE递归教程:创建员工层级结构
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功