分享
 
 
 

C语言的程序结构

王朝c/c++·作者佚名  2008-06-01
窄屏简体版  字體: |||超大  

1 基本程序结构

任何一种程序设计语言都具有特定的语法规则和规定的表达方法。一个程序只有严格按照语言规定的语法和表达方式编写,才能保证编写的程序在计算机中能正确地执行,同时也便于阅读和理解。

为了了解C语言的基本程序结构,我们先介绍几个简单的C程序。

这是一个最简单的C程序,其执行结果是在屏幕上显示一行信息:

RUN <enter>

This is a sample of c PRogram.

本程序的执行过程是:

• 程序从m a i n ( )处开始。

• 变量a代表一个整数,并且初始值为3。

• 执行程序(函数)p r o c ( );屏幕上显示H e l l o,\ n为转义字符,代表换行的意思。

• 执行程序(函数)f u n c ( );并将结果赋予a,此时,a的值为2。

• 屏幕上显示“This is a sample of c program.”。

程序执行的结果是在屏幕显示两行信息:

R U N <enter>

H e l l o .

This is a sample of c program.

程序中/ * . . . . . * /表示对程序的说明(称为注释),不参与程序的运行。注释文字可以是任意字符,如汉字、拼音、英文等。

本程序的功能是对从键盘输入的长方体的长、宽、高三个整型量求其体积的值。程序运行的情况如下:

R U N ↵

5 , 8 , 6 ↵

v = 240

在本例中,m a i n函数在调用v o l u m e函数时,将实际参数x、y、z的值分别传送给v o l u m e函数中的形式参数a、b、c。经过执行v o l u m e函数得到一个结果(即v o l u m e函数中变量p的值)并把这个值赋给变量v。

从上面程序例子,可以看出C程序的基本结构。

C程序为函数模块结构,所有的C程序都是由一个或多个函数构成,其中必须只能有一个主函数m a i n ( )。程序从主函数开始执行,当执行到调用函数的语句时,程序将控制转移到调用函数中执行,执行结束后,再返回主函数中继续运行,直至程序执行结束。C程序的函数是由编译系统提供的标准函数(如p r i n t f、s c a n f等)和由用户自己定义的函数(如p r o c、f u n c、v o l u m e等)。虽然从技术上讲,主函数不是C语言的一个成分,但它仍被看做是其中的一部分,因此,“m a i n”不能用作变量名。

函数的基本形式是:函数类型函数名(形式参数)形式参数说明;

{

数据说明部分;

语句部分;

}

其中:函数头包括函数说明、函数名和圆括号中的形式参数(如int volume(a,b,c)),假如函数

调用无参数传递,圆括号中形式参数为空(如void proc()函数)。形式参数说明指定函数调用传递参数的数据类型(如例1 . 3中语句int a,b,c;)。函数体包括函数体内使用的数据说明和执行函数功能的语句,花括号{和}表示函数体的

开始和结束。

1.3.2 函数库和链接

从技术上讲,纯粹由程序员自己编写的语句构成C语言程序是可能的,但这却是罕见的。因为所有的C编译程序都提供能完成各种常用任务的函数—函数库(如p r i n t f、s c a n f等)。C编译程序的实现者已经编写了大部分常见的通用函数。当我们调用一个别人编写的函数时编译程序“记忆”它的名字。随后,“链接程序”把我们编写的程序同标准函数库中找到的目标码结合起来,这个过程称为“链接”。

保存在函数库中的函数是可重定位的。这意味着其中机器码指令的内存地址并未绝对地确定, 只有偏移量是确定的。当把程序与标准函数库中的函数相链接时,内存偏移量被用来产生实际地址。有关重定位的具体内容,请查阅其他技术书籍。

编写程序时用到的函数,许多都可以在标准函数库中找到。它们是可以简单地组合起来的程序构件。编写了一个经常要用的函数之后,可将其放入库中备用。

1.3.3 开发一个C程序

开发一个C程序,包括以下四步:

1) 程序设计程序设计亦称程序编辑。程序员用任一编辑软件(编辑器)将编写好的C程序输入计算机,并以文本文件的形式保存在计算机的磁盘上。编辑的结果是建立C源程序文件。C程序习惯上使用小写英文字母,常量和其他用途的符号可用大写字母。C语言对大、小写字母是有区别的。要害字必须小写。

2) 程序编译编译是指将编辑好的源文件翻译成二进制目标代码的过程。编译过程是使用C语言提供的编译程序(编译器)完成的。不同操作系统下的各种编译器的使用命令不完全相同,使用时应注重计算机环境。编译时,编译器首先要对源程序中的每一个语句检查语法错误,当发现错误时,就在屏幕上显示错误的位置和错误类型的信息。此时,要再次调用编辑器进行查错修改。然后,再进行编译,直至排除所有语法和语义错误。正确的源程序文件经过编译后在磁盘上生成目标文件。

3 ) 链接程序编译后产生的目标文件是可重定位的程序模块,不能直接运行。链接就是把目标文件和其他分别进行编译生成的目标程序模块(假如有的话)及系统提供的标准库函数链接在一起,生成可以运行的可执行文件的过程。链接过程使用C语言提供的链接程序(链接器)完成,生成的可执行文件存在磁盘中。

4) 程序运行生成可执行文件后,就可以在操作系统控制下运行。若执行程序后达到预期目的,则C程序的开发工作到此完成。否则,要进一步检查修改源程序,重复编辑—编译

—链接—运行的过程,直到取得预期结果为止。

大部分C语言都提供一个独立的开发集成环境,它可将上述四步连贯在一个程序之中。本书所涉及的程序全部在Turbo C环境中进行。

1.3.4 C语言的要害字

表1 - 2列举了3 2个要害字,它们与标准C句法结合,形成了程序设计语言C。

C语言的要害字都用小写字母。C语言中区分大写与小写,e l s e是要害字,“E L S E”则不是。在C程序中,要害字不能用于其它目的,即不答应将要害字作为变量名或函数名使用。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有