当前位置:嗨网首页>书籍在线阅读

01-C预处理器和C库

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

第16章 C预处理器和C库

本章介绍以下内容:

  • 预处理指令——#define、#include、#ifdef、#else、#endif、#ifndef、#if、#elif、#line、#error、#pragma;
  • 关键字——_Generic、_Noreturn、_Static_assert;
  • 函数/宏——sqrt()、atan()、atan2()、exit()、atexit()、assert()、memcpy()、memmove()、va_start()、va_arg()、va_copy()、va_end();
  • C预处理器的其他功能;
  • 通用选择表达式;
  • 内联函数;
  • C库概述和一些特殊用途的方便函数。

C语言建立在适当的关键字、表达式、语句以及使用它们的规则上。然而,C标准不仅描述C语言,还描述如何执行C预处理器、C标准库有哪些函数,以及详述这些函数的工作原理。本章将介绍C预处理器和C库,我们先从C预处理器开始。

C预处理器在程序执行之前查看程序(故称之为预处理器)。根据程序中的预处理器指令,预处理器把符号缩写替换成其表示的内容。预处理器可以包含程序所需的其他文件,可以选择让编译器查看哪些代码。预处理器并不知道C。基本上它的工作是把一些文本转换成另外一些文本。这样描述预处理器无法体现它的真正效用和价值,我们将在本章举例说明。前面的程序示例中也有很多 #define#include 的例子。下面,我们先总结一下已学过的预处理指令,再介绍一些新的知识点。