如何编写一个c语言程序,如何用c语言编写窗口

首页 > 体育 > 作者:YD1662023-06-23 17:40:04

如何编写一个c语言程序,如何用c语言编写窗口(1)

第 2 章 C语言基本概念

某个人的常量可能是其他人的变量。

本章介绍了C语言的一些基本概念,包括预处理指令、函数、变量和语句。即使是编写最简单的C程序,也会用到这些基本概念。后续几章会更详细地描述这些概念。

首先,2.1节给出一个简单的C程序,并且描述了如何对这个程序进行编译和链接。接着,2.2节讨论如何使程序通用。2.3节介绍如何添加说明性解释,即通常所说的注释。2.4节介绍变量,变量用来存储程序执行过程中可能发生改变的数据。2.5节说明利用scanf函数把数据读入变量的方法。就如2.6节介绍的那样,常量是程序执行过程中不会发生改变的数据,用户可以对其进行命名。最后,2.7节解释C语言的命名(标识符)规则,2.8节给出C程序的布局规范。

2.1 编写一个简单的C程序

与用其他语言编写的程序相比,C程序较少要求“形式化的东西”。一个完整的C程序可以只有寥寥数行。

程序 显示双关语

在Kernighan和Ritchie编写的经典C语言著作《C程序设计语言》中,第一个程序是极其简短的。它仅仅输出了一条hello, world消息。与大多数C语言书的作者不同,我不打算用这个程序作为第一个C程序示例,而更愿意尊重C语言的另一个传统:显示双关语。下面是一条双关语:

To C, or not to C: that is the question.

下面这个名为pun.c的程序会在每次运行时显示上述消息。

pun.c

#include <stdio.h> int main(void) { printf("To C, or not to C: that is the question.\n"); return 0; }

2.2节会对这段程序中的一些格式进行详尽的说明,这里仅做简要介绍。对本程序所要完成的操作来说,它的第一行

#include <stdio.h>

是必不可少的,它“包含”了C语言标准输入/输出库的相关信息。程序的可执行代码都在main函数中,这个函数代表“主”程序。main函数中的第一行代码是用来显示期望信息的。printf函数来自标准输入/输出库,可以产生完美的格式化输出。代码\n告诉printf函数执行完消息显示后要进行换行操作。第二行代码

return 0;

表明程序终止时会向操作系统返回值0。

2.1.1 编译和链接

尽管pun.c程序十分简短,但是为运行这个程序而包含的内容可能比想象的要多。首先,需要生成一个含有上述程序代码的名为pun.c的文件(使用任何文本编辑器都可以创建该文件)。文件的名字无关紧要,但是编译器通常要求带上文件的扩展名.c。

接下来需要把程序转化为机器可以执行的形式。对于C程序来说,转化通常包含下列3个步骤。

幸运的是,上述过程往往是自动实现的,因此人们会发现这项工作不是太艰巨。事实上,因为预处理器通常会和编译器集成在一起,所以人们甚至可能不会注意到它在工作。

根据不同的编译器和操作系统,编译和链接所需的命令也是多种多样的。在UNIX系统环境下,通常把C编译器命名为cc。为了编译和链接pun.c程序,需要在终端或命令行窗口输入如下命令:

% cc pun.c

(字符%是UNIX系统的提示符,不需要输入。)在使用编译器cc时,系统自动进行链接操作,无须单独的链接命令。

在编译和链接好程序后,编译器cc会把可执行程序放到默认名为a.out的文件中。编译器cc有许多选项,其中一个选项(-o)允许为含有可执行程序的文件选择名字。例如,假设要把文件pun.c生成的可执行文件命名为pun,那么只需输入下列命令:

% cc –o pun pun.c

GCC

GCC是最流行的C编译器之一,它随Linux发行,但也有面向其他很多平台的版本。这种编译器的使用与传统的UNIX cc编译器相似。例如,编译程序pun.c可以使用以下命令:

% gcc –o pun pun.c

如何编写一个c语言程序,如何用c语言编写窗口(2)

本章最后的“问与答”部分将提供更多关于GCC的信息。

2.1.2 集成开发环境

到目前为止,我们一直通过在操作系统提供的...

2.2 简单程序的一般形式

下面一起来仔细研究一下pun.c程序,并且由此归纳出一些通用的程序格式。简单的C程序一般具有如下形式:

指令 int main(void) { 语句 }

在这个模板以及本书的其他类似模板中,所有以等宽(Courier)字体显示的语句都代表实际的C语言程序代码,所有以中文楷体 斜体显示的部分则表示需要由程序员提供的内容。

注意如何使用花括号来标出main函数的起始和结束。C语言使用{和}的方式非常类似于其他语言中begin和end的用法。

如何编写一个c语言程序,如何用c语言编写窗口(3)

这也说明了有关C语言一个共识:C语言极其依赖缩写词和特殊符号,这是C程序非常简洁(或者不客气地说含义模糊)的一个原因。

即使是最简单的C程序也依赖3个关键的语言特性:指令(在编译前修改程序的编辑命令)、函数(被命名的可执行代码块,如main函数)和语句(程序运行时执行的命令)。下面将详细讨论这些特性。

2.2.1 指令

在编译C程序之前,预处理器会首先对其进行编辑。我们把预处理器执行的命令称为指令。第14章和第15章会详细讨论指令,这里只关注#include指令。

程序pun.c由下面这行指令开始:

#include <stdio.h>

这条指令说明,在编译前把<stdio.h>中的信息“包含”到程序中。<stdio.h>包含C标准输入/输出库的信息。C语言拥有大量类似于<stdio.h>的头(header,➤15.2节),每个头都包含一些标准库的内容。这段程序中包含<stdio.h>的原因是C语言不同于其他的编程语言,它没有内置的“读”和“写”命令。输入/输出功能由标准库中的函数实现。

所有指令都是以字符#开始的。这个字符可以把C程序中的指令和其他代码区分开来。指令默认只占一行,每条指令的结尾没有分号或其他特殊标记。

2.2.2 函数

函数类似于其他编程语言中的“过程”或“子例程”,它们是用来构建程序的构建块。事实上,C程序就是函数的集合。函数分为两大类:一类是程序员编写的函数,另一类则是作为C语言实现的一部分提供的函数。我们把后者称为库函数(library function),因为它们属于一个由编译器提供的函数“库”。

术语“函数”来源于数学。在数学中,函数是指根据一个或多个给定参数进行数值计算的规则:

如何编写一个c语言程序,如何用c语言编写窗口(4)

首页 12345下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.