zoukankan      html  css  js  c++  java
  • ANSI C 与 C99的不同

    由于C语言在发展过程中制定了多个标准,其中ANSI C 和 C99这两大标准用的最多,但也有很大的差别。不同的编译软件所使用的标准不同,在一个编译软件中使用其他的C语言标准来写代码就会造成一些“不正常”的错误。以下列举了ANSI C 与 C99两大标准的不同点,以供大家参考。

    1. C99中可在任意地方定义变量;而传统的ANSI C 只能在代码开头的地方定义变量。

    2. 变量是可变的量,常量是固定不变的量,直接写在程序里的,我们称作直接量(literal),在程序中多次出现的直接量,是magic number不利于阅读与维护;

        C99允许直接定义常量 ,在类型前边加修饰符 const,这个值不能被修改,read-only variable is not assignable。

        ex: const int A=100; 

        (注意与宏定义相区别)

    3. 单行注释 // 是C99独有的,ANSI C不支持;而多行注释 /* */是传统ANSI C就有的

    4. for(int i=0;i<n;i++)这种在for循环里定义变量是C99独有的

    5. C99在定义数组时,数组的个数可以是变量

    5. C99进行数组的集成初始化时,可定位赋值。

        ex: int a[10]={[0]=20,[5]=,5,6};

        输出:20,0,0,0,0,5,6,0,0,0

  • 相关阅读:
    IT职业选择与定位
    零碎时间应该拿来做什么
    编程漫谈(七):意义与自由
    第一次项目发布的心得体会
    入职一月的一点感想
    职业发展思考(一)
    健康先行: 每天锻炼一小时!!!
    2012, 软件职场之旅启程
    程序员的成长之路
    计算机学习方法
  • 原文地址:https://www.cnblogs.com/nylglqx/p/9689797.html
Copyright © 2011-2022 走看看