1 基本
![](/icons/65209chengxu.gif)
结构 任何
![](/icons/65209yi.gif)
种
![](/icons/65209chengxu.gif)
设计语言都具有特定
![](/icons/65209de.gif)
语法规则和规定
![](/icons/65209de.gif)
表达思路方法
![](/icons/65209dou2.gif)
![](/icons/65209yi.gif)
个
![](/icons/65209chengxu.gif)
只有严格按照语言规定
![](/icons/65209de.gif)
语法和表达方式编写
![](/icons/65209dou.gif)
才能保证编写
![](/icons/65209de.gif)
![](/icons/65209chengxu.gif)
在计算机中能正确地执行
![](/icons/65209dou.gif)
同时也便于阅读和理解
![](/icons/65209dou2.gif)
为了了解C语言
![](/icons/65209de.gif)
基本
![](/icons/65209chengxu.gif)
结构
![](/icons/65209dou.gif)
我们先介绍几个简单
![](/icons/65209de.gif)
C
![](/icons/65209chengxu.gif)
![](/icons/65209dou2.gif)
![](\"http://127.0.0.1/Files/BeyondPic/2007-4/19/0741909061955607.g<img)
\" width=529>
这是
![](/icons/65209yi.gif)
个最简单
![](/icons/65209de.gif)
C
![](/icons/65209chengxu.gif)
![](/icons/65209dou.gif)
其执行结果是在屏幕上显示
![](/icons/65209yi.gif)
行信息: RUN <enter>
This is a sample of c program.
![](\"http://127.0.0.1/Files/BeyondPic/2007-4/19/0741909062389984.g<img)
\" width=447>
本
![](/icons/65209chengxu.gif)
![](/icons/65209de.gif)
执行过程是:
•
![](/icons/65209chengxu.gif)
从m a i n ( )处开始
![](/icons/65209dou2.gif)
• 变量a代表
![](/icons/65209yi.gif)
个整数
![](/icons/65209dou.gif)
并且
![](/icons/65209chushi.gif)
值为3
![](/icons/65209dou2.gif)
• 执行
![](/icons/65209chengxu.gif)
(
![](/icons/65209hanshu.gif)
)p r o c ( );屏幕上显示H e l l o
![](/icons/65209dou.gif)
\\ n为转义
![](/icons/65209zifu.gif)
![](/icons/65209dou.gif)
代表换行
![](/icons/65209de.gif)
意思
![](/icons/65209dou2.gif)
• 执行
![](/icons/65209chengxu.gif)
(
![](/icons/65209hanshu.gif)
)f u n c ( );并将结果赋予a
![](/icons/65209dou.gif)
此时
![](/icons/65209dou.gif)
a
![](/icons/65209de.gif)
值为2
![](/icons/65209dou2.gif)
• 屏幕上显示“This is a sample of c program.”
![](/icons/65209dou2.gif)
![](/icons/65209chengxu.gif)
执行
![](/icons/65209de.gif)
结果是在屏幕显示两行信息:
R U N <enter>
H e l l o .
This is a sample of c program.
![](/icons/65209chengxu.gif)
中/ * . . . . . * /表示对
![](/icons/65209chengxu.gif)
![](/icons/65209de.gif)
介绍说明(称为注释)
![](/icons/65209dou.gif)
不参和
![](/icons/65209chengxu.gif)
![](/icons/65209de.gif)
运行
![](/icons/65209dou2.gif)
注释文字可以是任意
![](/icons/65209zifu.gif)
![](/icons/65209dou.gif)
如汉字、拼音、英文等
![](/icons/65209dou2.gif)
![](\"http://127.0.0.1/Files/BeyondPic/2007-4/19/0741909062494002.g<img)
\" width=499>
本
![](/icons/65209chengxu.gif)
![](/icons/65209de.gif)
功能是对从键盘输入
![](/icons/65209de.gif)
长方体
![](/icons/65209de.gif)
长、宽、高 3个整型量求其体积
![](/icons/65209de.gif)
值
![](/icons/65209dou2.gif)
![](/icons/65209chengxu.gif)
运行
![](/icons/65209de.gif)
情况如下:
R U N ↵
5 , 8 , 6 ↵
v = 240
在本例中
![](/icons/65209dou.gif)
m a i n
![](/icons/65209hanshu.gif)
在
![](/icons/65209diaoyong.gif)
v o l u m e
![](/icons/65209hanshu.gif)
时
![](/icons/65209dou.gif)
将实际参数x、y、z
![](/icons/65209de.gif)
值分别传送给v o l u m e
![](/icons/65209hanshu.gif)
中
![](/icons/65209de.gif)
形式参数a、b、c
![](/icons/65209dou2.gif)
经过执行v o l u m e
![](/icons/65209hanshu.gif)
得到
![](/icons/65209yi.gif)
个结果(即v o l u m e
![](/icons/65209hanshu.gif)
中变量p
![](/icons/65209de.gif)
值)并把这个值赋给变量v
![](/icons/65209dou2.gif)
从上面
![](/icons/65209chengxu.gif)
例子
![](/icons/65209dou.gif)
可以看出C
![](/icons/65209chengxu.gif)
![](/icons/65209de.gif)
基本结构
![](/icons/65209dou2.gif)
C
![](/icons/65209chengxu.gif)
为
![](/icons/65209hanshu.gif)
模块结构
![](/icons/65209dou.gif)
所有
![](/icons/65209de.gif)
C
![](/icons/65209chengxu.gif)
都是由
![](/icons/65209yi.gif)
个或多个
![](/icons/65209hanshu.gif)
构成
![](/icons/65209dou.gif)
其中必须只能有
![](/icons/65209yi.gif)
个主
![](/icons/65209hanshu.gif)
m a i n ( )
![](/icons/65209dou2.gif)
![](/icons/65209chengxu.gif)
从主
![](/icons/65209hanshu.gif)
开始执行
![](/icons/65209dou.gif)
当执行到
![](/icons/65209diaoyong.gif)
![](/icons/65209hanshu.gif)
![](/icons/65209de.gif)
语句时
![](/icons/65209dou.gif)
![](/icons/65209chengxu.gif)
将控制转移到
![](/icons/65209diaoyong.gif)
![](/icons/65209hanshu.gif)
中执行
![](/icons/65209dou.gif)
执行结束后
![](/icons/65209dou.gif)
再返回主
![](/icons/65209hanshu.gif)
中继续运行
![](/icons/65209dou.gif)
直至
![](/icons/65209chengxu.gif)
执行结束
![](/icons/65209dou2.gif)
C
![](/icons/65209chengxu.gif)
![](/icons/65209de.gif)
![](/icons/65209hanshu.gif)
是由编译系统提供
![](/icons/65209de.gif)
标准
![](/icons/65209hanshu.gif)
(如p r i n t f、s c a n f等)和由用户自己定义
![](/icons/65209de.gif)
![](/icons/65209hanshu.gif)
(如p r o c、f u n c、v o l u m e等)
![](/icons/65209dou2.gif)
虽然从技术上讲
![](/icons/65209dou.gif)
主
![](/icons/65209hanshu.gif)
不是C语言
![](/icons/65209de.gif)
![](/icons/65209yi.gif)
个成分
![](/icons/65209dou.gif)
但它仍被看做是其中
![](/icons/65209de.gif)
![](/icons/65209yi.gif)
部分
![](/icons/65209dou.gif)
因此
![](/icons/65209dou.gif)
“m a i n”不能用作变量名
![](/icons/65209dou2.gif)
![](/icons/65209hanshu.gif)
![](/icons/65209de.gif)
基本形式是:
![](/icons/65209hanshu.gif)
类型
![](/icons/65209hanshu.gif)
名(形式参数)形式参数介绍说明;
{
数据介绍说明部分;
语句部分;
}
其中:
![](/icons/65209hanshu.gif)
头包括
![](/icons/65209hanshu.gif)
介绍说明、
![](/icons/65209hanshu.gif)
名和圆括号中
![](/icons/65209de.gif)
形式参数(如
![](/icons/65209int.gif)
volume(a,b,c))
![](/icons/65209dou.gif)
如果
![](/icons/65209hanshu.gif)
![](/icons/65209diaoyong.gif)
无参数传递
![](/icons/65209dou.gif)
圆括号中形式参数为空(如void proc
![](/icons/65209kh.gif)
![](/icons/65209hanshu.gif)
)
![](/icons/65209dou2.gif)
形式参数介绍说明指定
![](/icons/65209hanshu.gif)
![](/icons/65209diaoyong.gif)
传递参数
![](/icons/65209de.gif)
数据类型(如例1 . 3中语句
![](/icons/65209int.gif)
a,b,c;)
![](/icons/65209dou2.gif)
![](/icons/65209hanshu.gif)
体包括
![](/icons/65209hanshu.gif)
体内使用
![](/icons/65209de.gif)
数据介绍说明和执行
![](/icons/65209hanshu.gif)
功能
![](/icons/65209de.gif)
语句
![](/icons/65209dou.gif)
花括号{和}表示
![](/icons/65209hanshu.gif)
体
![](/icons/65209de.gif)
开始和结束
![](/icons/65209dou2.gif)
1.3.2
![](/icons/65209hanshu.gif)
库和链接
从技术上讲
![](/icons/65209dou.gif)
纯粹由
![](/icons/65209chengxu.gif)
员自己编写
![](/icons/65209de.gif)
语句构成C语言
![](/icons/65209chengxu.gif)
是可能
![](/icons/65209de.gif)
![](/icons/65209dou.gif)
但这却是罕见
![](/icons/65209de.gif)
![](/icons/65209dou2.gif)
![](/icons/65209yinwei.gif)
所有
![](/icons/65209de.gif)
C编译
![](/icons/65209chengxu.gif)
都提供能完成各种常用任务
![](/icons/65209de.gif)
![](/icons/65209hanshu.gif)
—
![](/icons/65209hanshu.gif)
库(如p r i n t f、s c a n f等)
![](/icons/65209dou2.gif)
C编译
![](/icons/65209chengxu.gif)
![](/icons/65209de.gif)
实现者已经编写了大部分常见
![](/icons/65209de.gif)
通用
![](/icons/65209hanshu.gif)
![](/icons/65209dou2.gif)
当我们
![](/icons/65209diaoyong.gif)
![](/icons/65209yi.gif)
个别人编写
![](/icons/65209de.gif)
![](/icons/65209hanshu.gif)
时编译
![](/icons/65209chengxu.gif)
“记忆”它
![](/icons/65209de.gif)
名字
![](/icons/65209dou2.gif)
随后
![](/icons/65209dou.gif)
“链接
![](/icons/65209chengxu.gif)
”把我们编写
![](/icons/65209de.gif)
![](/icons/65209chengxu.gif)
同标准
![](/icons/65209hanshu.gif)
库中找到
![](/icons/65209de.gif)
目标码结合起来
![](/icons/65209dou.gif)
这个过程称为“链接”
![](/icons/65209dou2.gif)
保存在
![](/icons/65209hanshu.gif)
库中
![](/icons/65209de.gif)
![](/icons/65209hanshu.gif)
是可重定位
![](/icons/65209de.gif)
![](/icons/65209dou2.gif)
这意味着其中机器码指令
![](/icons/65209de.gif)
内存地址并未绝对地确定, 只有偏移量是确定
![](/icons/65209de.gif)
![](/icons/65209dou2.gif)
当把
![](/icons/65209chengxu.gif)
和标准
![](/icons/65209hanshu.gif)
库中
![](/icons/65209de.gif)
![](/icons/65209hanshu.gif)
相链接时
![](/icons/65209dou.gif)
内存偏移量被用来产生实际地址
![](/icons/65209dou2.gif)
有关重定位
![](/icons/65209de.gif)
详细内容
![](/icons/65209dou.gif)
请查阅其他技术书籍
![](/icons/65209dou2.gif)
编写
![](/icons/65209chengxu.gif)
时用到
![](/icons/65209de.gif)
![](/icons/65209hanshu.gif)
![](/icons/65209dou.gif)
许多都可以在标准
![](/icons/65209hanshu.gif)
库中找到
![](/icons/65209dou2.gif)
它们是可以简单地组合起来
![](/icons/65209de.gif)
![](/icons/65209chengxu.gif)
构件
![](/icons/65209dou2.gif)
编写了
![](/icons/65209yi.gif)
个经常要用
![](/icons/65209de.gif)
![](/icons/65209hanshu.gif)
的后
![](/icons/65209dou.gif)
可将其放入库中备用
![](/icons/65209dou2.gif)
1.3.3 开发
![](/icons/65209yi.gif)
个C
![](/icons/65209chengxu.gif)
开发
![](/icons/65209yi.gif)
个C
![](/icons/65209chengxu.gif)
![](/icons/65209dou.gif)
包括以下 4步:
1)
![](/icons/65209chengxu.gif)
设计
![](/icons/65209chengxu.gif)
设计亦称
![](/icons/65209chengxu.gif)
编辑
![](/icons/65209dou2.gif)
![](/icons/65209chengxu.gif)
员用任
![](/icons/65209yi.gif)
编辑软件Software(编辑器)将编写好
![](/icons/65209de.gif)
C
![](/icons/65209chengxu.gif)
输入计算机
![](/icons/65209dou.gif)
并以文本文件
![](/icons/65209de.gif)
形式保存在计算机
![](/icons/65209de.gif)
磁盘上
![](/icons/65209dou2.gif)
编辑
![](/icons/65209de.gif)
结果是建立C源
![](/icons/65209chengxu.gif)
文件
![](/icons/65209dou2.gif)
C
![](/icons/65209chengxu.gif)
习惯上使用小写英文字母
![](/icons/65209dou.gif)
常量和其他用途
![](/icons/65209de.gif)
符号可用大写字母
![](/icons/65209dou2.gif)
C语言对大、小写字母是有区别
![](/icons/65209de.gif)
![](/icons/65209dou2.gif)
关键字必须小写
![](/icons/65209dou2.gif)
2)
![](/icons/65209chengxu.gif)
编译编译是指将编辑好
![](/icons/65209de.gif)
源文件翻译成 2进制目标代码
![](/icons/65209de.gif)
过程
![](/icons/65209dou2.gif)
编译过程是使用C语言提供
![](/icons/65209de.gif)
编译
![](/icons/65209chengxu.gif)
(编译器)完成
![](/icons/65209de.gif)
![](/icons/65209dou2.gif)
区别操作系统?br />
3 ) 链接
![](/icons/65209chengxu.gif)
编译后产生
![](/icons/65209de.gif)
目标文件是可重定位
![](/icons/65209de.gif)
![](/icons/65209chengxu.gif)
模块
![](/icons/65209dou.gif)
不能直接运行
![](/icons/65209dou2.gif)
链接就是把目标文件和其他分别进行编译生成
![](/icons/65209de.gif)
目标
![](/icons/65209chengxu.gif)
模块(如果有
![](/icons/65209de.gif)
话)及系统提供
![](/icons/65209de.gif)
标准库
![](/icons/65209hanshu.gif)
链接在
![](/icons/65209yi.gif)
起
![](/icons/65209dou.gif)
生成可以运行
![](/icons/65209de.gif)
可执行文件
![](/icons/65209de.gif)
过程
![](/icons/65209dou2.gif)
链接过程使用C语言提供
![](/icons/65209de.gif)
链接
![](/icons/65209chengxu.gif)
(链接器)完成
![](/icons/65209dou.gif)
生成
![](/icons/65209de.gif)
可执行文件存在磁盘中
![](/icons/65209dou2.gif)
4)
![](/icons/65209chengxu.gif)
运行生成可执行文件后
![](/icons/65209dou.gif)
就可以在操作系统控制下运行
![](/icons/65209dou2.gif)
若执行
![](/icons/65209chengxu.gif)
后达到预期目
![](/icons/65209de.gif)
![](/icons/65209dou.gif)
则C
![](/icons/65209chengxu.gif)
![](/icons/65209de.gif)
开发工作到此完成
![](/icons/65209dou2.gif)
否则
![](/icons/65209dou.gif)
要进
![](/icons/65209yi.gif)
步检查修改源
![](/icons/65209chengxu.gif)
![](/icons/65209dou.gif)
重复编辑—编译
—链接—运行
![](/icons/65209de.gif)
过程
![](/icons/65209dou.gif)
直到取得预期结果为止
![](/icons/65209dou2.gif)
大部分C语言都提供
![](/icons/65209yi.gif)
个独立
![](/icons/65209de.gif)
开发集成环境
![](/icons/65209dou.gif)
它可将上述 4步连贯在
![](/icons/65209yi.gif)
个
![](/icons/65209chengxu.gif)
的中
![](/icons/65209dou2.gif)
本书所涉及
![](/icons/65209de.gif)
![](/icons/65209chengxu.gif)
全部在Turbo C环境中进行
![](/icons/65209dou2.gif)
1.3.4 C语言
![](/icons/65209de.gif)
关键字
表1 - 2列举了3 2个关键字
![](/icons/65209dou.gif)
它们和标准C句法结合
![](/icons/65209dou.gif)
形成了
![](/icons/65209chengxu.gif)
设计语言C
![](\"http://127.0.0.1/Files/BeyondPic/2007-4/19/0741909063053018.g<img)
\" width=514>
C语言
![](/icons/65209de.gif)
关键字都用小写字母
![](/icons/65209dou2.gif)
C语言中区分大写和小写
![](/icons/65209dou.gif)
e l s e是关键字
![](/icons/65209dou.gif)
“E L S E”则不是
![](/icons/65209dou2.gif)
在C
![](/icons/65209chengxu.gif)
中
![](/icons/65209dou.gif)
关键字不能用于其它目
![](/icons/65209de.gif)
![](/icons/65209dou.gif)
即不允许将关键字作为变量名或
![](/icons/65209hanshu.gif)
名使用
延伸阅读
最新评论