GCC警告

  1. 下列选项控制编译器警告信息:  
  2.   --all-warnings              此开关缺少可用文档  
  3.   --extra-warnings            此开关缺少可用文档  
  4.   -W                          不建议使用此开关;请改用 -Wextra  
  5.   -Wabi                       当结果与 ABI  
  6.                               相容的编译器的编译结果不同时给出警告  
  7.   -Waddress                   使用可疑的内存地址时给出警告  
  8.   -Waggregate-return          当返回结构、联合或数组时给出警告  
  9.   -Waliasing                  为可能的虚参重叠给出警告  
  10.   -Walign-commons             对 COMMON 块对齐的警告  
  11.   -Wall                       启用大部分警告信息  
  12.   -Wampersand                 若延续字符常量中缺少 & 则给出警告  
  13.   -Warray-bounds              当数组访问越界时给出警告  
  14.   -Warray-temporaries         创建临时数组时给出警告  
  15.   -Wassign-intercept          当 Objective-C  
  16.                               赋值可能为垃圾回收所介入时给出警告  
  17.   -Wattributes                当对属性的使用不合适时给出警告  
  18.   -Wbad-function-cast         当把函数转换为不兼容类型时给出警告  
  19.   -Wbuiltin-macro-redefined   当内建预处理宏未定义或重定义时给出警告  
  20.   -Wc++-compat                当在 C 语言中使用了 C 与 C++  
  21.                               交集以外的构造时给出警告  
  22.   -Wc++0x-compat              当 C++ 构造的意义在 ISO C++ 1998 和 ISO  
  23.                               C++ 200x 中不同时给出警告  
  24.   -Wcast-align                当转换指针类型导致对齐边界增长时给出警告  
  25.   -Wcast-qual                 当类型转换丢失限定信息时给出警告  
  26.   -Wchar-subscripts           当下标类型为“char”时给出警告  
  27.   -Wcharacter-truncation      对被截断的字符表达式给出警告  
  28.   -Wclobbered                 对能为"longjmp"或"vfork"所篡改的变量给出警告  
  29.   -Wcomment                   对可能嵌套的注释和长度超过一个物理行长的  
  30.                               C++ 注释给出警告  
  31.   -Wcomments                  -Wcomment 的同义词  
  32.   -Wconversion                当隐式类型转换可能改变值时给出警告  
  33.   -Wconversion-extra          对大多数隐式类型转换给出警告  
  34.   -Wconversion-null           将 NULL 转换为非指针类型时给出警告  
  35.   -Wcoverage-mismatch         Warn in case profiles in -fprofile-use do not  
  36.                               match  
  37.   -Wcpp                       Warn when a #warning directive is encountered  
  38.   -Wctor-dtor-privacy         当所有构造函数和析构函数都是私有时给出警告  
  39.   -Wdeclaration-after-statement 当声明出现在语句后时给出警告  
  40.   -Wdeprecated                使用不建议的编译器特性、类、方法或字段时给出警告  
  41.   -Wdeprecated-declarations   对 __attribute__((deprecated)) 声明给出警告  
  42.   -Wdisabled-optimization     当某趟优化被禁用时给出警告  
  43.   -Wdiv-by-zero               对编译时发现的零除给出警告  
  44.   -Wdouble-promotion          对从“float”到“double”的隐式转换给出警告  
  45.   -Weffc++                    对不遵循《Effetive  
  46.                               C++》的风格给出警告  
  47.   -Wempty-body                当 if 或 else 语句体为空时给出警告  
  48.   -Wendif-labels              当 #elif 和 #endif  
  49.                               后面跟有其他标识符时给出警告  
  50.   -Wenum-compare              对不同枚举类型之间的比较给出警告  
  51.   -Werror-implicit-function-declaration 不建议使用此开关;请改用  
  52.                               -Werror=implicit-function-declaration  
  53.   -Wextra                     打印额外(可能您并不想要)的警告信息  
  54.   -Wfloat-equal               当比较浮点数是否相等时给出警告  
  55.   -Wformat                    对 printf/scanf/strftime/strfmon  
  56.                               中的格式字符串异常给出警告  
  57.   -Wformat-contains-nul       当格式字符串包含 NUL 字节时给出警告  
  58.   -Wformat-extra-args         当传递给格式字符串的参数太多时给出警告  
  59.   -Wformat-nonliteral         当格式字符串不是字面值时给出警告  
  60.   -Wformat-security           当使用格式字符串的函数可能导致安全问题时给出警告  
  61.   -Wformat-y2k                当 strftime 格式给出 2  
  62.                               位记年时给出警告  
  63.   -Wformat-zero-length        对长度为 0 的格式字符串给出警告  
  64.   -Wformat=                   此开关缺少可用文档  
  65.   -Wignored-qualifiers        当类型限定符被忽略时给出警告。  
  66.   -Wimplicit                  对隐式函数声明给出警告  
  67.   -Wimplicit-function-declaration 对隐式函数声明给出警告  
  68.   -Wimplicit-int              当声明未指定类型时给出警告  
  69.   -Wimplicit-interface        对带有隐式接口的调用给出警告  
  70.   -Wimplicit-procedure        对没有隐式声明的过程调用给出警告  
  71.   -Winit-self                 对初始化为自身的变量给出警告。  
  72.   -Winline                    当内联函数无法被内联时给出警告  
  73.   -Wint-to-pointer-cast       当将一个大小不同的整数转换为指针时给出警告  
  74.   -Wintrinsic-shadow          如果用户过程有与内建过程相同的名字则警告  
  75.   -Wintrinsics-std            当内建函数不是所选标准的一部分时给出警告  
  76.   -Winvalid-offsetof          对“offsetof”宏无效的使用给出警告  
  77.   -Winvalid-pch               在找到了 PCH  
  78.                               文件但未使用的情况给出警告  
  79.   -Wjump-misses-init          当跳转略过变量初始化时给出警告  
  80.   -Wlarger-than-              此开关缺少可用文档  
  81.   -Wlarger-than=<N>           当目标文件大于 N 字节时给出警告  
  82.   -Wline-truncation           对被截断的源文件行给出警告  
  83.   -Wlogical-op                当逻辑操作结果似乎总为真或假时给出警告  
  84.   -Wlong-long                 当使用 -pedantic 时不对“long  
  85.                               long”给出警告  
  86.   -Wmain                      对可疑的“main”声明给出警告  
  87.   -Wmissing-braces            若初始值设定项中可能缺少花括号则给出警告  
  88.   -Wmissing-declarations      当全局函数没有前向声明时给出警告  
  89.   -Wmissing-field-initializers 若结构初始值设定项中缺少字段则给出警告  
  90.   -Wmissing-format-attribute  当函数可能是 format  
  91.                               属性的备选时给出警告  
  92.   -Wmissing-include-dirs      当用户给定的包含目录不存在时给出警告  
  93.   -Wmissing-noreturn          当函数可能是 __attribute__((noreturn))  
  94.                               的备选时给出警告  
  95.   -Wmissing-parameter-type    K&R  
  96.                               风格函数参数声明中未指定类型限定符时给出警告  
  97.   -Wmissing-prototypes        全局函数没有原型时给出警告  
  98.   -Wmudflap                   当构造未被 -fmudflap 处理时给出警告  
  99.   -Wmultichar                 使用多字节字符集的字符常量时给出警告  
  100.   -Wnested-externs            当“extern”声明不在文件作用域时给出警告  
  101.   -Wnoexcept                  Warn when a noexcept expression evaluates to  
  102.                               false even though the expression can't actually  
  103.                               throw  
  104.   -Wnon-template-friend       在模板内声明未模板化的友元函数时给出警告  
  105.   -Wnon-virtual-dtor          当析构函数不是虚函数时给出警告  
  106.   -Wnonnull                   当将 NULL 传递给需要非 NULL  
  107.                               的参数的函数时给出警告  
  108.   -Wnormalized=<id|nfc|nfkc>  对未归一化的 Unicode 字符串给出警告  
  109.   -Wold-style-cast            程序使用 C  
  110.                               风格的类型转换时给出警告  
  111.   -Wold-style-declaration     对声明中的过时用法给出警告  
  112.   -Wold-style-definition      使用旧式形参定义时给出警告  
  113.   -Woverflow                  算术表示式溢出时给出警告  
  114.   -Woverlength-strings        当字符串长度超过标准规定的可移植的最大长度时给出警告  
  115.   -Woverloaded-virtual        重载虚函数名时给出警告  
  116.   -Woverride-init             覆盖无副作用的初始值设定时给出警告  
  117.   -Wpacked                    当 packed  
  118.                               属性对结构布局不起作用时给出警告  
  119.   -Wpacked-bitfield-compat    当紧实位段的偏移量因 GCC 4.4  
  120.                               而改变时给出警告  
  121.   -Wpadded                    当需要填补才能对齐结构成员时给出警告  
  122.   -Wparentheses               可能缺少括号的情况下给出警告  
  123.   -Wpmf-conversions           当改变成员函数指针的类型时给出警告  
  124.   -Wpointer-arith             当在算术表达式中使用函数指针时给出警告  
  125.   -Wpointer-sign              赋值时如指针符号不一致则给出警告  
  126.   -Wpointer-to-int-cast       将一个指针转换为大小不同的整数时给出警告  
  127.   -Wpragmas                   对错误使用的 pragma 加以警告  
  128.   -Wproperty-assign-default   Warn if a property for an Objective-C object has  
  129.                               no assign semantics specified  
  130.   -Wprotocol                  当继承来的方法未被实现时给出警告  
  131.   -Wreal-q-constant           Warn about real-literal-constants with 'q'  
  132.                               exponent-letter  
  133.   -Wredundant-decls           对同一个对象多次声明时给出警告  
  134.   -Wreorder                   编译器将代码重新排序时给出警告  
  135.   -Wreturn-type               当 C  
  136.                               函数的返回值默认为“int”,或者 C++  
  137.                               函数的返回类型不一致时给出警告  
  138.   -Wselector                  当选择子有多个方法时给出警告  
  139.   -Wsequence-point            当可能违反定序点规则时给出警告  
  140.   -Wshadow                    当一个局部变量掩盖了另一个局部变量时给出警告  
  141.   -Wsign-compare              在有符号和无符号数间进行比较时给出警告  
  142.   -Wsign-promo                当重载将无符号数提升为有符号数时给出警告  
  143.   -Wstack-protector           当因为某种原因堆栈保护失效时给出警告  
  144.   -Wstrict-aliasing           当代码可能破坏强重叠规则时给出警告  
  145.   -Wstrict-aliasing=          当代码可能破坏强重叠规则时给出警告  
  146.   -Wstrict-null-sentinel      将未作转换的 NULL  
  147.                               用作哨兵时给出警告  
  148.   -Wstrict-overflow           禁用假定有符号数溢出行为未被定义的优化  
  149.   -Wstrict-overflow=          禁用假定有符号数溢出行为未被定义的优化  
  150.   -Wstrict-prototypes         使用了非原型的函数声明时给出警告  
  151.   -Wstrict-selector-match     当备选方法的类型签字不完全匹配时给出警告  
  152.   -Wsuggest-attribute=const   Warn about functions which might be candidates  
  153.                               for __attribute__((const))  
  154.   -Wsuggest-attribute=noreturn 当函数可能是 __attribute__((noreturn))  
  155.                               的备选时给出警告  
  156.   -Wsuggest-attribute=pure    Warn about functions which might be candidates  
  157.                               for __attribute__((pure))  
  158.   -Wsurprising                对“可疑”的构造给出警告  
  159.   -Wswitch                    当使用枚举类型作为开关变量,没有提供  
  160.                               default 分支,但又缺少某个 case  
  161.                               时给出警告  
  162.   -Wswitch-default            当使用枚举类型作为开关变量,但没有提供“default”分支时给出警告  
  163.   -Wswitch-enum               当使用枚举类型作为开关变量但又缺少某个  
  164.                               case 时给出警告  
  165.   -Wsync-nand                 当 __sync_fetch_and_nand 和  
  166.                               __sync_nand_and_fetch  
  167.                               内建函数被使用时给出警告  
  168.   -Wsynth                     不建议使用。此开关不起作用。  
  169.   -Wsystem-headers            不抑制系统头文件中的警告  
  170.   -Wtabs                      允许使用不符合规范的制表符  
  171.   -Wtraditional               使用了传统 C  
  172.                               不支持的特性时给出警告  
  173.   -Wtraditional-conversion    原型导致的类型转换与无原型时的类型转换不同时给出警告  
  174.   -Wtrampolines               Warn whenever a trampoline is generated  
  175.   -Wtrigraphs                 当三字母序列可能影响程序意义时给出警告  
  176.   -Wtype-limits               当由于数据类型范围限制比较结果永远为真或假时给出警告  
  177.   -Wundeclared-selector       当使用 @selector()  
  178.                               却不作事先声明时给出警告  
  179.   -Wundef                     当 #if  
  180.                               指令中用到未定义的宏时给出警告  
  181.   -Wunderflow                 数字常量表达式下溢时警告  
  182.   -Wuninitialized             自动变量未初始化时警告  
  183.   -Wunknown-pragmas           对无法识别的 pragma 加以警告  
  184.   -Wunsafe-loop-optimizations 当循环因为不平凡的假定而不能被优化时给出警告  
  185.   -Wunsuffixed-float-constants 对不带后缀的浮点常量给出警告  
  186.   -Wunused                    启用所有关于“XX未使用”的警告  
  187.   -Wunused-but-set-parameter  Warn when a function parameter is only set,  
  188.                               otherwise unused  
  189.   -Wunused-but-set-variable   Warn when a variable is only set, otherwise unused  
  190.   -Wunused-dummy-argument     对未使用的哑元给出警告。  
  191.   -Wunused-function           有未使用的函数时警告  
  192.   -Wunused-label              有未使用的标号时警告  
  193.   -Wunused-macros             当定义在主文件中的宏未被使用时给出警告  
  194.   -Wunused-parameter          发现未使用的函数指针时给出警告  
  195.   -Wunused-result             当一个带有 warn_unused_result  
  196.                               属性的函数的调用者未使用前者的返回值时给出警告  
  197.   -Wunused-value              当一个表达式的值未被使用时给出警告  
  198.   -Wunused-variable           有未使用的变量时警告  
  199.   -Wvariadic-macros           指定 -pedantic  
  200.                               时不为可变参数宏给出警告  
  201.   -Wvla                       使用变长数组时警告  
  202.   -Wvolatile-register-var     当一个寄存器变量被声明为 volatile  
  203.                               时给出警告  
  204.   -Wwrite-strings             在 C++  
  205.                               中,非零值表示将字面字符串转换为‘char  
  206.                               *’时给出警告。在 C  
  207.                               中,给出相似的警告,但这种类型转换是符合  
  208.                               ISO C 标准的。  
  209.   -frequire-return-statement  Functions which return values must end with  
  210.                               return statements 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值