Chinaunix首页 | 论坛 | 博客
  • 博客访问: 134902
  • 博文数量: 57
  • 博客积分: 2500
  • 博客等级: 少校
  • 技术积分: 580
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-04 22:57
文章分类

全部博文(57)

文章存档

2011年(1)

2010年(1)

2009年(55)

我的朋友

分类: C/C++

2009-02-04 14:29:50

我使用man gcc: search -std=得到下面的关于gcc中语言标准的使用情况的描述。
$ gcc -v
Reading specs from /home/y/usr/bin/../lib/gcc/x86_64-redhat-linux/3.4.6/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-java-awt=gtk --host=x86_64-redhat-linux
Thread model: posix
gcc version 3.4.6 20060404 (Red Hat 3.4.6-3)
=============================================================={{
-std=
    此选项目前只支持C或C++编译时的语言标准选择。本选项必须要给定一个值,可能是如下所列其一。
    c89
    iso9899:1990
        ISO C90 (与-ansi相同)

    iso9899:199409
        ISO C90 修正案1

    c99
    c9x
    iso9899:1999
    iso9899:199x
        ISO C99 注意:本标准还没有被完全支持,了解更多信息请查看:。
        选项c9x和iso9899:199x已经废弃
 
    gnu89
        默认选项,ISO 90和GNU扩展(包含一些C99的特性)

 

    gnu99
    gnu9x
        ISO C99和GNU扩展。当ISO C99在gcc中完全实现后,它变成默认的选项。选项gnu9x已经废弃
    c++98
        修正以后的1998年的ISO C++标准

    gnu++98
        编译C++代码时的默认选项。等同于c++98选项加上GNU扩展
 
    甚至当次选项没有明确指定时,你照样可以使用一些新标准里面的特性,只要这些特性和以前的标准没有冲突就行。
例如,就算没有指定-std=c99,你任然可以使用“__restrict__”。
    当使用-std选项使用特定的ISO C标准时,除非在ISO C90标准里面没有,否则和使用-ansi选项是同样的效果,
例如,在inline关键字中使用“//”注释。
==============================================================}}
阅读(1179) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:firefox扩展实践

给主人留下些什么吧!~~