转载自R-G-Y-CQ的新浪博客

-Wall显示所有的警告信息

-Wall选项可以打开所有类型的语法警告,以便于确定程序源代码是否是正确的,并且尽可能实现可移植性。

对Linux开发人员来讲,GCC给出的警告信息是很有价值的,它们不仅可以帮助程序员写出更加健壮的程序,而且还是跟踪和调试程序的有力工具。建议在用GCC编译源代码时始终带上-Wall选项,养成良好的习惯。

-pedantic以ANSI/ISO C标准列出的所有警告

当GCC在编译不符合ANSI/ISO C语言标准的源代码时,如果在编译指令中加上了-pedantic选项,那么源程序中使用了扩展语法的地方将产生相应的警告信息。

-ansi支持符合ANSI标准的C程序.

这样就会关闭GNU C中某些不兼容ANSI C的特性,例如asm, inline和 typeof关键字,以及诸如unix和vax这些表明当前系统类型的预定义宏.同时开启 不受欢迎和极少使用的ANSI trigraph特性,以及禁止`$'成为标识符的一部分.

尽管使用了-ansi'选项,下面这些可选的关键字, __asm__, __extension__, __inline__和__typeof__仍然有效.你当然不会把 他们用在ANSI C程序中,但可以把他们放在头文件里,因为编译包含这些头文件的程序时,可能会指定-ansi'选项.另外一些预定义宏,如__unix__和__vax__,无论有没有使用 `-ansi'选项,始终有效.

使用-ansi'选项不会自动拒绝编译非ANSI程序,除非增加-pedantic'选项作为 `-ansi'选项的补充.

使用`-ansi'选项的时候,预处理器会预定义一个__STRICT_ANSI__宏.有些头文件 关注此宏,以避免声明某些函数,或者避免定义某些宏,这些函数和宏不被ANSI标准调用;这样就不会干扰在其他地方 使用这些名字的程序了.

转载于:https://www.cnblogs.com/jt2001/p/5198733.html

gcc -Wall -pedantic -ansi(转载)相关推荐

  1. gcc -wall -pedantic -ansi

    gcc -wall -pedantic -ansi (2013-05-07 09:26:25) 转载▼ 标签: gcc 调试 it 分类:gdb -Wall显示所有的警告信息 -Wall选项可以打开所 ...

  2. gcc编译选项pedantic(GCC编译器的C++标准严格模式)

    文章目录 选项含义 示例 选项含义 -pedantic 是 GCC 编译器的一个编译选项.这个选项会让编译器严格遵守 C++ 标准,并输出标准要求的诊断信息,对于一些可能不符合 C++ 标准的语法或者 ...

  3. gcc -WALL -D_FILE_OFFSET_BITS=64_D_GUN_SOURCE-G-g 安装fastDfs出现:致命错误:sf/sf_global.h:没有那个文件或目录的最新解决方法

    文章目录 1.问题情况如下 2.权威解决方法 1.问题情况如下 原因是最新版本引入了网诺框架库 2.权威解决方法 也就是我们得在上面再拉取一个最新的libserverframe 然后同样解压后,执行. ...

  4. 调试内存_C/C++程序调试和内存检测

    来源:wxquare www.cnblogs.com/wxquare/p/4840063.html 程序出现错误很正常,一个优秀的程序员必须学会调试,发现错误并改正.减少程序错误最有效的方法是:在敲代 ...

  5. cfree运行程序错误_C/C++程序调试和内存检测

    程序出现错误很正常,一个优秀的程序员必须学会调试,发现错误并改正.减少程序错误最有效的方法是:在敲代码之前,多花点时间思考,如何构造程序,数据结构和算法,尽量把细节提前写下来,可以尝试着在纸上写出核心 ...

  6. linux主机上,UnixBench性能测试工具使用

    1,下载  wget http://soft.laozuo.org/scripts/UnixBench5.1.3.tgz [root@VM_0_15_centos test]# [root@VM_0_ ...

  7. linux查看文件夹个球,[原创]linux下面的打小球游戏

    [原创]linux下面的打小球游戏 (2012-04-10 04:51:44) 标签: linux 游戏 杂谈 [原创]linux下面的打小球游戏linux下面的C编程,我还是新手,请大家别笑话. # ...

  8. 君正4750开发板使用日记2-Linux环境搭建与内核编译

    为什么80%的码农都做不了架构师?>>>    Linux环境搭建与内核编译 上一篇中把4750开发板与PC的硬件连通了,这一篇记录的是基本的Linux环境的搭建.其实官方文档已经比 ...

  9. 测试显卡性能的两种方法

    测试显卡性能的两种方法: 方法一:利用软件包unixbench-5.1.2 用unixbench-5.1.2,需要网上下载相关源码包,并提前需要修改Makefile: GL_LIBS = -lGL - ...

最新文章

  1. HDU2553 N皇后问题
  2. 使用Spring的Hibernate构建Java Web应用程序
  3. 18条工作感想:不要不情愿地工作
  4. c语言编程题目(一)
  5. 官宣!华为主导首个软件定义摄像机国际标准诞生
  6. idea搭建springcloud项目_Eureka搭建分布式SpringCloud项目
  7. Android之 震动(Vibrator)如何贯通Android系统 (从硬件设计 -- 驱动 -- HAL -- JNI -- Framework -- Application)
  8. C#利用反射,遍历获得一个类的所有属性名,以及该类的实例的所有属性的值
  9. 计算机科学导论5版答案,5计算机科学导论习题答案.doc
  10. bim技术应用有哪些
  11. struts2环境搭建教程
  12. 数据库发展的三个阶段及特点
  13. Python——第一天的Suger Rush
  14. ESP8266制作天气预报海藻球微景观生态缸记录(一)
  15. 使用google.zxing制作条形码和二维码
  16. 虾皮物流怎么收费?收费标准是什么?
  17. 计算机网络——单播、多播(组播)、广播
  18. 基于java的家庭理财系统_基于jsp的家庭理财系统-JavaEE实现家庭理财系统 - java项目源码...
  19. 纳什均衡(Nash equilibrium)
  20. 使用zrender绘制基本图形

热门文章

  1. ElasticSearch--Field的使用
  2. VMware Workstation 中安装CentOS-7-x84_64-DVD-1708.iso
  3. 阿里资深技术专家:如何对复杂的业务系统进行解耦和重构?
  4. Leco题目:两数相加
  5. 基于STM32单片机智能RFID刷卡汽车位锁设计(开题报告)
  6. matlab中minigrid,[转载][转载]matlab画地图的工具:worldmap和m_map
  7. 在Kotlin中@Suppress可能取到的值
  8. Mounty 1.10免费版(NTFS硬盘工具)支持big sur
  9. liunx 红帽6.8、 oracle11g 安装指南
  10. Kafka3.0 SASL安全认证