《C程序设计语言(第2版·新版)》第0章 引言

  从这篇开始,按照个人理解,整理Kernigham和Ritchie的《C程序设计语言(第2版·新版)》。程序员

0.1 C

  C很适合用来编写编译器和操做系统,被称做“系统编程语言”;BCPL语言-->B语言-->C语言;   编程

  数据类型:基本(字符,多种长度整型和浮点型);派生(指针,数组,结构,联合);表达式:运算符+操做数,总能够做为语句;指针:提供与具体机器无关的地址算术运算;数组

  控制流结构:语句组,条件判断(if-else),多路选择(switch),终止测试在顶部的循环(while, for),终止测试在底部的循环(do),提早跳出循环(break);编程语言

  函数:可返回基本、结构、联合、指针类型;总可递归调用;局部变量;函数、变量做用范围可改变;函数

  预处理:对程序文本进行宏替换、包含其余源文件、条件编译;工具

  C语言未提供直接处理复合对象(字符串,集合,列表、数组)的操做;除局部变量提供的静态定义和堆栈外未定义任何存储分配工具;未提供输入输出功能。全部这些高层机制必须由显式调用函数来提供。测试

  不完美之处:某些运算符优先级不正确;某些语法还可优化优化

0.2 ANSI C的变化

  语法变化:函数声明和定义(修改);结构赋值和枚举定义等(新增);禁止指针和整型交换值,要求变量正确声明和显式强制类型转换spa

  定义标准库:访问OS;格式化I/O;内存分配;字符串操做;标准头文件(访问函数声明或数据类型声明);操作系统

  提出可移植性,预设一个常量集合来描述机器特性;

0.3 本书结构

  第1章:C语言核心部分;

  2-6章:语言特性

  基本数据类型、运算符、表达式;

  控制流;

  函数和程序结构(包括外部变量、做用域规则和多源文件),以及预处理器;

  指针和地址运算;

  结构和联合;

  7:标准库,全部支持C的机器都支持它

  8:C与UNIX接口:I/O;文件系统;存储分配

 

  附录A:语言参考手册简洁版:给程序员看的,ANSI C是写编译器要看的

  附录B:标准库简洁版

  附录C:ANSI C与原始C的变动小结。标准和各个特定编译器是解释语言的最终权威。

相关文章
相关标签/搜索