1
66
几个
|
2
144
这是我的:
标记的 * |
3
54
|
4
39
|
5
36
我很惊讶还没有人这么说——就我而言,最有用的标志是
|
6
35
-口盖 --向所有有风险的指针操作添加运行时检查以捕获UB。这将有效地再次免疫程序缓冲区溢出,并帮助捕获各种悬空指针。 下面是一个演示:
|
7
21
把上面所有好的标志(你们都指定了)放在一个“文件”中,并使用上面的这个标志将该文件中的所有标志一起使用。 如: 文件:compilerFlags
然后编译:
|
8
15
|
9
15
如果需要知道编译器预定义的预处理器标志:
|
10
13
它对检测错误并没有真正的帮助,但是很少提到的
|
11
10
我的makefile通常包含
需要 为了便于移植到某个 仍然
是的,我是一个乐观得无可救药的波兰人,她一直这么想 当然 现在任何一个月,一个平台要么宣布过时,要么获得一个体面的C++编译器,我们终于可以切换到C++。在我看来,这是不可避免的——唯一的问题是,这是在管理层最终给每个人发了一匹小马之前还是之后发生的 |
12
10
|
13
9
|
14
8
|
15
6
好,
但仅此而已。你不能把一个C编译器调整成比C本身更能保存类型的东西。 |
16
6
下面是一个使用-MD和-MP的非常通用的makefile示例,它将编译一个充满c++源文件和头文件的目录,并自动找出所有依赖项:
以下是一篇博文,对其进行了更深入的讨论: http://www.microhowto.info/howto/automatically_generate_makefile_dependencies.html |
17
6
有
|
18
4
发件人: http://mces.blogspot.com/2005/07/char-const-argv.html
|
19
4
my post :
这个
最重要的是( according to the GCC manual ):
|
20
3
我有时用
http://gcc.gnu.org/onlinedocs/gcc/Link-Options.html#Link-Options |
21
3
虽然这个答案可能有点离题,而且这个问题对我来说是值得的+1,因为 我特别感兴趣的是任何额外的警告,和/或在某些情况下将警告转化为错误,以绝对减少任何意外的类型不匹配。有一种工具应该被发现 全部 splint 与gcc或其他编译器相比,IMHO在发现错误方面做得更好。你的工具箱里有一个很好的工具。 通过lint类型的工具(如splint)进行静态检查应该是编译器工具链的一部分。 |
22
2
除了
也有更多的警告,这两个都没有启用,一般情况下,对于那些更可疑的坏东西。可用选项集取决于您使用的gcc版本-consult
|
23
1
|
24
1
|