GNU C++程序编译

这篇博客介绍了GNU C++的编译过程,特别是关于警告和错误的处理选项,如-Wall、-W、-Wreturn-type和-Werror等。同时,文章还探讨了可移植性选项,如-Wtraditional、-pedantic和-ansi,以及如何通过-E、-S和-c控制预处理、编译和汇编阶段。使用-v和-fsyntax-only选项可以方便地查看编译过程和检查源代码的语法错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

警告和错误选项:

要增加编译器的警告级,用-Wall选项,尽管选项名中有all字样,但指定-W可以增加更多警告。要安全装入各种可能的警告,可以用如下命令组合这两个选项:

g++ -Wall -W atest.cpp

g++ -w welcome.cpp    让编译器不报告任何警告

也可以打开特定警告。一个好的选项是-Wreturn-type,让编译器警告函数声明返回值但没有包括return语句。-Wcomment表示开始开始说明符在另一个C语言形式的说明内。

-Werror选项使警告变成错误,不生成完成的可执行代码文件,但仍然在消息中显示“warning”字样

 

可移植性选项:

-Wtraditional选项对非传统结构或ANSI C++和ANSI C中不允许的结构发出警告。如果要让编译器把所有非传统结构当作错误,则指定        -traditional 而不带大写W,如果程序用这个命令进行编译,则通常能在其他ANSI C++系统上编译。

-pedantic 在程序使用GNU特定特性时会发出警告。利用这个警告,程序使用其他编译器可能不认识的GNU特性时会发出警告

-ansi 这时编译器只接受ANSI定义的结构

 

中间编译:

-E  预处理之后停止,不编译

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值