返回首页 - Notes - 2012

C语言标准拾遗


常用的标准

  1. K&R:也叫 传统C,这是由《The C Programming Language》第一版(1978 年)所界定的
  2. ANSI C:这是目前使用最广泛的一个标准,由美国国家标准委员会于 1989 年完成标准化,所以也叫 C89
  3. Clean C:标准 C 与标准 C++ 的公共子集
  4. C99:该版本变化很大,主要是增添了 复数布尔可变数组C++风格注释 以及更为国际化的 字符集 支持
  5. C11:这是目前最新的 C语言 标准,主要是添加了对 多线程并行运算 的支持

如果一个 C实现 严格遵循标准并只使用 float.hiso646.hlimits.hstdarg.hstdbool.hstddef.hstdint.h 这些头文件所提供的函数库,那么这个实现就是一种遵循标准的 独立式 实现


标准拾遗

包含头文件 iso646.h 就可以使用 andornot 等来代替常规的逻辑操作符了

只要在函数的内部声明一个名为 __func__ 的字符数组,C99 编译器就会隐式声明标识符 __func__,并自动将该字符数组填充为该函数的名字。这个标识符可以当成调试工具来使用,下面是使用的示例:

int main (void) {
    printf("%s\n", __func__);
    // 输出main

    static const char __func__[] = "";
    // 该声明语句的位置不限,只要位于函数体里面就行
}

转义字符 \v(垂直制表符)和 \f(换页符)分别被打印成代表男女性别的标识符


date : 2012-06-11、2012-06-14