第1章 初识C语言
1.1 C语言的起源
1972年,贝尔实验室的丹尼斯·里奇和肯·汤普逊在开发UNIX操作系统时设计了C语言。(在B语言基础上)
C语言设计的初衷是将其作为程序员使用的一种编程工具。
1.2 选择C语言的理由
1.设计特性
C语言的设计理念让用户能轻松地完成自顶向下的规划、结构化编程和模块化设计。
用C编写的程序更易懂、更可靠。
2.高效性
C是高效的语言。C程序紧凑、运行速度快。具有汇编语言的微调控制能力。
3.可移植性
在一种系统中编写的C程序几乎不用修改就能在其他系统上运行。
4.强大而灵活
5.面向程序员
6.缺点
C语言使用指针,容易出现难以发现的错误。
1.3 C语言的应用范围
嵌入式系统,操作系统(Linux)等
1.4 计算机能做什么
简单来说计算机就是把一些数字放在一些地方,然后可以加加减减之类的计算。
(这里涉及一些计算机基础知识。如果要了解这个,可以学习计算机组成原理。学习C语言并不需要太了解)
1.5 高级计算机语言和编译器
1.6 语言标准
1989 年 ANSI C 标准 定义了C语言和C标准库 (通常称作C89标准或C90标准)
1999 年 C99
2011 年 C11 //并不是所有编译器都支持。
每一代标准都有一些不同,但差别不大。
1.7 使用C语言的7个步骤
1. 定义程序的目标
通常是用人类语言描述问题和解题思路。这一阶段主要是概念性的认识。
2. 设计程序
如何用程序完成任务?考虑和程序相关的问题,但不涉及具体代码。
3. 编写代码
4. 编译
5. 运行程序
6. 测试和调试
7. 维护和修改代码
8. 说明
编程并非是像上述1~7那样的线性过程,有时要在不同步骤间往复。(比如测试时发现编写的思路有问题,就可能要重新分析问题)
//此书建议先规划再动手,用纸和笔记录下程序的目标和设计框架。
1.8 编程机制
//不必详细了解,因为使用集成开发环境程序编译和运行C程序是只要点一下按键就好了。
举一个例子:
用C语言写了一串代码,存储在一个concrete.c的源文件,//实际上是一个文本文件。
编译器将源代码转换成中间代码(通常是机器语言代码)
链接器将中间代码和其他代码(库代码、启动代码)合并,生成可执行文件.exe文件