摘要: C有5种存储类:自动——在一个代码块内(或在一个函数头部作为参量)声明的变量,无论有没有存储类型修饰符auto,都属于自动存储类。该类具有自动存储时期、代码作用域和空链接。如未经初始化,它的值是不定的。寄存器——在一个代码块内(或在一个函数头部作为参量)使用存储类修饰符register声明的变量属于寄存器存储类。该类具有自动存储时期、代码作用域和空链接,而且无法获得其地址。把一个变量声明为寄存器变量可以指示(建议)编译器提供可用的最快访问。如未经初始化,它的值是不定的。静态、空链接——在一个代码块内使用存储类修饰符static声明的变量属于静态空链接存储类。该类具有静态存储时期、代码作用域和空 阅读全文
posted @ 2013-01-19 23:35 qwertWZ 阅读(316) 评论(0) 推荐(0) 编辑
摘要: C99允许将类型限定词和存储类限定词static等放在函数原型和函数头部的形式参量所属的初始方括号内。对于类型限定词的情形,这样做为已有功能提供了一个可选语法。例如,下面是一个使用旧语法的声明:void ofmouth (int * const a1, int * restrict a2, int n); // 以前的风格它表明a1是一个指向int的const指针,a2是一个受限指针。等价的新语法如下:void ofmouth (int a1[const], int a2[restrict], int n); // C99允许static的情形是不同的,因为它引发了一些新问题。例如,考虑如下原 阅读全文
posted @ 2013-01-19 23:19 qwertWZ 阅读(316) 评论(0) 推荐(0) 编辑