zoukankan      html  css  js  c++  java
  • 【转】gcc中的-w -W和-Wall选项

    -w的意思是关闭编译时的警告,也就是编译后不显示任何warning,因为有时在编译之后编译器会显示一些例如数据转换之类的警告,这些警告是我们平时可以忽略的。

    -Wall选项意思是编译后显示所有警告。

    -W选项类似-Wall,会显示警告,但是只显示编译器认为会出现错误的警告。

    在编译一些项目的时候可以-W和-Wall选项一起使用。

    举个例子:

    #include <stdio.h>  
      
    void main()  
    {  
            int a=1.0*4;  
            return 0;  
    }  

    直接编译

    gcc -o test_w_wall testwwall.c

    只显示一个警告。

    使用-w选项

    gcc -w -o test_w_wall testwwall.c

    不会显示任何警告,直接编译成功。

    使用-Wall选项

    gcc -Wall -o test_w_wall testwwall.c

    显示了所有的警告,比之前不使用任何选项多出了变量a未使用这个警告,也多出了main函数的返回值不是int型。

    使用-W选项

    gcc -W -o test_w_wall testwwall.c

    只显示了没有返回值的main函数不应该有return一个值这个警告。

    gcc -W -Wall test_w_wall testwwall.c

    比单独使用-W多出了变量未使用这个警告,比单独使用-Wall选项少了一个看起来重复的main函数返回值不是int这个警告。

    之前看了一篇国外程序员写的博客,说编译时不使用-W -Wall选项的是stupid的,所以编译时还是尽量带上吧。

    转自:http://blog.csdn.net/m7548352/article/details/49520069

  • 相关阅读:
    notes: the architecture of GDB
    How systems researchers build systems
    spark1.1.0源码阅读-executor
    spark1.1.0源码阅读-taskScheduler
    spark1.1.0源码阅读-dagscheduler and stage
    akka简单示例-2
    环境安装与项目配置
    安装zsh
    linux mysql 密码修改
    django-debug-toolbar 安装及配置 django性能监控及调试
  • 原文地址:https://www.cnblogs.com/codingmengmeng/p/7443710.html
Copyright © 2011-2022 走看看