gcc常用参数2

-w
禁止所有警告信息.
-W
对下列事件显示额外的警告信息:
*
非易变自动变量(nonvolatile automatic variable)可能在调用longjmp时发生改变. 这些
警告仅在优化编译时发生.
编译器只知道对setjmp的调用,他不可能知道会在哪里调用longjmp,事实上一个 信号处理例程可
以在程序的任何地点调用他.其结果是,即使程序没有问题,你也可能会得到警告,因为无法在可能出
现问题 的地方调用longjmp.
*
既可以返回值,也可以不返回值的函数. (缺少结尾的函数体被看作不返回函数值)例如,下面的函数
将导致这种警告:

foo (a)
{
if (a > 0)
return a;
}
由于GNU CC不知道某些函数永不返回(含有abort和longjmp),因此有可能出现虚假警告.
*
表达式语句或逗号表达式的左侧没有产生作用(side effect).如果要防止这种警告,应该把未使
用的表达式强制转换为void类型.例如,这样的表达式`x[i,j]'会导致警告,而`x[(void)i,
j]'就不会.
*
无符号数用`>'或`<='和零做比较.


-Wall
结合所有上述的`-W'选项.通常我们建议避免这些被警告的用法,我们相信,恰当结合宏的使用能
够轻易避免这些用法。
剩下的`-W...'选项不包括在`-Wall'中,因为我们认为在必要情况下,这些被编译器警告 的程序结构,可
以合理的用在"干净的"程序中.

-Werror
视警告为错误;出现任何警告即放弃编译.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值