《C Primer Plus》学习笔记 – Lesson01:概览
- C语言的起源
贝尔实验室的Dennis Ritchie在1972年开发了C,C语言来自Thompson的B语言;
- 使用C语言的理由
- 设计特性:C语言是一种融合了控制特性的现代语言,其设计可以使用户采用自顶向下的规划、结构化的编程,以及模块化设计;
- 高效性:C可以表现出通常只有汇编语言才具有的精细控制能力;
- 可移植性:在一个系统上写的C程序可以经过很少的改动或不改动就在其它系统上运行;
- 强大的功能和灵活性:C强大而灵活;
- 面向编程人员:它允许访问硬件,操作内存中的特定位;
- 灵活的指针:不过在表达方面的自由会增加风险;
- C语言的发展方向
- UNIX操作系统;
- 个人计算机;
- 大型机;
- 计算机游戏;
- 嵌入式系统;
- PC应用软件;
- 计算机语言;
- 计算机工作的基本原理
- 中央处理单元(CPU);
- 随机访问存储器(RAM);
- 永久存储器(硬盘);
- 各种外设(键盘、鼠标和显示器);
- 编译器
对于计算机来说,并不能识别C语言,需要使用编译器将高级语言程序翻译成计算机能识别的机器指令;
- 使用C语言的7个步骤
- 定义程序目标:希望程序做什么有一个清晰的想法;
- 设计程序:决定程序如何完成,用户界面应该是什么样,程序应该如何组织,目标用户是谁等;
- 编写代码:将上面的程序设计写为实实在在的C代码;
- 编译:将源代码转换为计算机可以理解的代码并且是可执行的文件;
- 运行程序;
- 测试和调试程序:有时程序虽然可以运行,但有可能运行的不正确,就需要进行检查并修复错误;
- 维护和修改程序:后期升级修复bug(打补丁);
- 编程机制
将C语言编写的内容保存在一个被称为源代码的文本文件中,多数以.c结尾;
- 目标代码文件、可执行文件和库
编译器将源代码转换为中间代码(目标代码);
链接器将此中间代码与其它代码相结合来生成可执行文件,把目标代码(中间代码)、启动代码(start-up code)和库代码结合在一起并生成可执行文件;