请问用tornada2.2编译程序,如何去掉警告信息?只显示错误信息。警告太多了,难以找到错误信息。
应该有一个编译选项,warn_on 或者 warn_off
-Wall是把所有的警告打开
个人觉得好的习惯是要把所有的警告打开,修改代码尽量把所有警告信息都能去掉,去不掉的也能说明原因并确保这样是没有问题的。否则就给自己的程序,尤其是给以后的集成留下隐患。
养成良好的习惯往往反而能节约你不少时间
没有找到类似warn_on 或者 warn_off,-Wall的编译选项,请问在哪个菜单项里?
1、告警应该都可以屏蔽掉,不要让发布的代码编译时还出现告警信息;
2、编译应该有选项;
3、perl应该也可以解决你的问题;
在编译选项里填入-Wall编译选项,一般还是别去掉告警信息,个人认为这些信息非常重要。在编译阶段发现错误,比你在程序运行过程中去找错简单多了,我一般不会放过任何一个告警信息
用 -w参数,是小写的w。这样可以把warning都关掉。用-Wno-xxx可以把xxx类型的warning关掉。这样的好处只有是代码中warning很多,又需要把错误找出来的情况下用而已。具体的查gcc的说明手册或者是diab的说明手册,大同小异。
真正的编译中,是建议把warning都打开的,有的甚至通过设置-Werror可以将warning强制当成错误来处理,这样以强制软件工程师解决掉所有潜在的风险。
实际上warning有时候是很严重的问题,因为C语言是弱类型检查语言,编译的时候很可能漏掉一些本来是错误的东东。比如有的时候会警告类型不匹配,这实际上已经是错误了。如果不更正,在嵌入式环境中很导致系统崩溃。又如,有n个参数的函数函数调用是只送了少于n个的参数,也之只是warning而已,但是也是很严重的错误。
以我自己的经验,基本所有的warning都应该处理掉的,只有很少的warning无大碍。C语言中在编译时有很多陷阱,很郁闷的,我想这也是很多人认为C语言程序设计风险大的因素之一吧。