笔记_C语言_引言摘要

随着使用经验的累加,使用者会越来越感到得心应手
C语言很适合用来编写 编译器和操作系统,因此被称为“系统编程语言”。
指针提供了与具体机器无关的地址算术运算。

C的特性:

  • BCPL 和 B 语言都是“无类型”的语言。相比较而言,C 语言提供了很多数据类型。其基本 类型包括字符、具有多种长度的整型和浮点数等。另外,还有通过指针、数组、结构和联合 派生的各种数据类型。表达式由运算符和操作数组成任何一个表达式,包括赋值表达式或函 数调用表达式,都可以是一个语句。指针提供了与具体机器无关的地址算术运算。
  • C 语言为实现结构良好的程序提供了基本的控制流结构:语句组、条件判断(if-else)、多路选择(switch)、终止测试在顶部的循环(while、for)、终止测试在底部的循环(do)、提前跳出循环(break)等。
  • 函数可以返回基本类型结构联合指针类型的值。
  • 任何函数都可以递归调用
  • 局部变量通常是“自动的”,即在每次函数调用时重新创建。
  • 函数定义可以不是嵌套的,但可以用块结构1的方式声明变量。
  • 一个 C 语言程序的不同函数可以出现在多个单独编译的不同源文件中。
  • 变量可以只在函数内部有效,也可以在函数外部但仅在一个源文件中有效,还可以在整个程 序中都有效。
  • 编译的预处理阶段将对程序文本进行宏替换、包含其它源文件以及进行条件编译。
  • C 语言是一种相对“低级”的语言。这种说法并没有什么贬 义 ,它仅仅意味着 C 语言可以处理大部分计算机能够处理的对象,比如字符、数字和地址。这些对象可以通过具体机器实现的算术运算符和逻辑运算符组合在一起并移动。
    C 语言不提供直接处理诸如字符串、集台、列表或数组等复合对象的操作。虽然可以将整个结构作为一个单元进行拷贝,但 C 语言没有处理整个数组或字符串的操。
  • 除了由函数的局部变量提供的静态定义和堆栈外,C 语言没有定义任何存储器分配工具,也不提供堆和无用内存回收工具。
  • 最后,C 语言本身没有提供输入/输出功能,没有 READ 或 WRITE 语句,也没有内置的文件访问方法,所有这些高层的机制必须由显式调用的函数提供。C 语言的大部分实现已合理地包含了这些函数的标准集合。
  • 类似地,C 语言只提供简单的单线程控制流,即测试、循环、分组和子程序,它不提供多道程序设计、并行操作、同步和协同例程。
    尽管缺少其中的某些特性看起来好像是一个严重不(“这意味着必须通过调用函数来比两个字符串吗?”),但是把语言保持在一个适度的规模会有很多益处。由于 C 语言相对较小, 因此可以用比较小的篇幅将它描述出来,这样也很容易学会。程序员有理由期望了解、理解 并真正彻底地使用完整的语言。

一个 C 语言程序,无论其大小如何,都是由函数和变量组成 的。函数中包含一些语句,以指定所要执行的计算操作;变量则用于存储计算过程中使用的值。

函数之间进行数据交换的一种方法是调用函数向被调用函数提供一个值(称为参数)列表。函数名后面的一对圆括号将参数列表括起来
printf("Hello world")
printf就是被调用函数,圆括号里面的内容就是值列表

  • for语句是一种循环语句,它是对while语句的推广。初始化部分(第一部分:仅在进入循环前执行一次)、条件部分(第二部分:。循环控制将对该条件求值,如果结果值为真(true),则执行 循环体。)与增加步长部分(第三部分)都可以是任何表达式。

  1. 结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,叫做结构 ↩︎

猜你喜欢

转载自blog.csdn.net/qq_42814498/article/details/89151820
今日推荐