GCC 笔记 C Dialect Options

-ansi  支持 C89,关闭不符和C89的 GNU扩展

-std=value value可以是c89,iso9899:1990,iso9989:199409,c99,c9x,iso9899:1999,iso9989:199x,gnu89,gnu99;gcc 默认使用gnu89,gnu99完全实现后,会用gnu99

-traditional  使用 ISO C 之前的C;C89的一些关键字还没不认为是关键字:如 inline, typeof, const, volatile 和 signed,这个选项也相当于同时开始-fwritable-strings, -fno-asm选项;

-fsigned-char  char默认为signed char

-funsigned-char char 默认为 unsigned char

-fno-signed-char char 只能为unsigned char

-fno-unsinged-char char 只能为signed char

-fwritable-strings 常量字符串可写

-fhosted  有完整的标准库可用,程序从 main() 开始,并返回 int,一般的程序都这样;

-ffreestanding 没有标准库可用,程序的开始和结束是和实现相关的,如:linux 内核;

参靠:

The definitive guide to gcc, chapter 1, Compiling C Dialects.

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwwswx.html