现代C:概念剖析和编程实践
上QQ阅读APP看书,第一时间看更新

1.1 命令式编程

你可能会看到这是一种语言,包含了一些奇怪的词,如mainincludefor等,它们以一种特殊的方式排列,并与许多奇怪的字符、数字和文本(“Doing some work”)混合在一起,看起来就像普通的英语。它被设计成在我们人类程序员和计算机之间提供一种联系,告诉它做什么:给它“下命令”。

要点1.1 C是一种命令式编程语言。

在本书中,我们不仅会遇到C编程语言,还会遇到一些C jargon(行话),这是一种帮助我们谈论C的语言

从第一个示例中你可能会猜到,这样的C程序具有不同的组件,它们形成了一些混合层。让我们试着从里到外理解它。此程序的运行结果在计算机的命令终端上输出5行文本。在我的计算机上,运行此程序的过程类似这样:

017-02

我们可以很容易地在程序中识别出程序输出(用C jargon来说就是打印C[1])的文本:第17行引号之间的部分。实际的动作发生在这一行和第20行之间。C称之为语句C,这有点用词不当。其他语言会使用指令这个术语,它更好地描述了用途。这个特殊的语句是调用C一个名为printf函数C

018-01

这里,printf函数接收4个参数C,包含在一对括号C中,即(...)

  • 这一行看起来很有趣的文本(在引号之间)是所谓的字符串文字C,用作输出的格式C。文本中有3个标记(格式说明符C),它们表示输出中要插入数字的位置。这些标记以%字符开头。这种格式还包含一些以反斜杠开头的特殊转义字符C\t\n
  • 在逗号字符之后,我们找到单词ii所代表的内容将被打印到第一个格式说明符%zu的位置。
  • 另一个逗号分隔下一个参数A[i]。它所代表的内容将被打印到第二个格式说明符(即第一个%g)的位置。
  • 最后同样用逗号分隔的A[i]*A[i]对应最后的%g

稍后我们将解释所有这些参数的含义。只需记住,我们确定了程序的主要目的(在终端上打印一些行),并且它“命令”printf函数来实现这个目的。剩下的部分就是一些“糖衣C”,用来指定将打印哪些数字,以及打印多少。


[1]这些来自C jargon的特殊术语用字母C来标记,后面也是如此。