Young Lee

Young Lee

C 学习笔记-1.程序设计与C语言

18
2
0
2023-11-11

程序设计与C语言

程序是一组计算机能够识别和执行的指令,用于实现特定目标或解决特定问题的命令序列的集合。

计算机语言:用于人与计算机通信的语言。

  • 为什么需要计算机语言?

    使用计算机语言目的就是和计算机沟通,沟通以后就能用计算机做很多事情,更好地控制计算机。使用计算机完成我们的目的。

机器语言

这种计算机能直接识别和接受的二进制代码指令称为**机器指令,**机器指令的集合就是该计算机的机器语言。

符号语言

显然,计算机并不能直接识别和执行符号语言的指令,需要用一种称为汇编程序的软件把符号语言的指令转换为机器指令。一般,一条符号语言的指令对应转换为一条机器指令。转换的过程称为“代真”或“汇编”,因此,符号语言又称为符号汇编语言汇编语言

高级语言

特点:

  1. 易读性和可理解性:高级编程语言通常使用自然语言类似的语法和结构,使代码更易于理解和阅读。这降低了编程的门槛,有助于减少错误和提高代码质量。

  2. 可移植性:高级编程语言通常是可移植的,这意味着相同的代码可以在不同的计算机平台和操作系统上运行,只需进行适当的编译或解释。

发展阶段:

  1. 非结构化语言:初期的语言属于非结构化的语言,编程风格比较随意,只要符合语法规则即可,没有严格的规范要求,程序中的流程可以随意跳转。人们往往追求程序执行的效率而采用了许多“小技巧”,使程序变得难以阅读和维护。

  2. 结构化语言:为了解决以上问题,提出了“结构化程序设计方法”,规定程序必须由具有良好特性的基本结构(顺序结构、选择结构循环结构)构成,程房中的流程不允许随意跳转,程序总是由上而下顺序执行各个基本结构。这种程序结构清晰,易于编写、阅读和维护。

  3. 面向对象的语言:近十多年来,在处理规模较大的问题时,开始使用面向对象的语言。

C语言的特点

  1. 低级和高级特性的结合:C语言同时提供了低级编程的能力,允许程序员直接访问计算机内存和硬件,以及高级编程的抽象特性,使其适用于系统级编程和应用级编程。

  2. 可移植性:C语言的标准库和语法规则设计使得C程序在不同平台上更容易移植,只需进行适度的调整即可在多个操作系统和计算机体系结构上运行。

  3. 丰富的标准库:C语言附带了一个强大的标准库,其中包含了许多常用功能和数据结构的实现,如输入/输出、字符串处理、数学函数等。

  4. 直接内存访问:C语言允许程序员直接访问计算机的内存,这使得它非常适合编写操作系统、驱动程序和嵌入式系统等应用。

  5. 高性能:C语言编写的程序通常具有较低的运行时开销,因为它不会引入额外的抽象层次和运行时开销。

  6. 系统编程:C语言广泛用于操作系统、编译器、网络协议和设备驱动程序等系统级编程任务。

  7. 面向过程编程:虽然C语言支持面向对象编程(通过C++和其他扩展),但它主要是一种面向过程的编程语言,强调函数和过程的调用。

  8. 强大的指针支持:C语言具有强大的指针功能,允许程序员直接操作内存地址,这在某些情况下非常有用,但也需要谨慎使用以避免错误。