C教程-函数(5)_计算机等级指导/介绍

此外, 源程序还应包含调试程序段, 以测试程序的运行情况, 并允许查找编
程错误。一旦程序运行情况良好, 可去掉调试程序段, 然而, 文件编制应做为源
程序的固定部分保留下来, 便于你或其他人维护和修改。
二、源程序的输入、编译和运行

C语言是一种中级语言, 用户用C语言编写的程序称为源程序, 存放用C 语言
所写源程序文件名字最后的两个字符一般必须为".c"。计算机硬件不能直接执行
源程序, 必须将源程序翻译成二进制目标程序。翻译工作是由一个程序完成的,
这个程序称为编译程序, 翻译的过程称为编译, 编译的结果称为目标程序, 存放
目标程序文件名字紧后的字符一般为".OBJ"或".O"。程序翻译成目标程序后, 便
可进行连接。"连接"的目的是使程序变成在计算机上可以执行的最终形式。在这
一阶段, 从系统程序库来的程序要与目标程序连接, 连接的结果称为执行程序,
存放执行程序文件名字一般以".EXE"结尾。
在Turbo C集成开发环境中建立一个新程序通常有以下几个步骤:
(1). 在编辑器中编写源文件。
(2). 生成可执行文件。

在DOS提示符下键入TC, 即可进入Turbo C了。进入主TC屏后, 按F3键, 即可
在随之出现的框中输入文件名, 文件名可以带".C"也可以不带( 此时系统会自动
加上)。输入文件名后, 按回车, 即可将文件调入, 如果文件不存在, 就建立一
个新文件(也可用下面例子中的方法输入文件名)。系统随之进入编辑状态。就可
以输入或修改源程序了, 源程序输入或修改完毕以后, 按Ctrl+F9(同时按下Ctrl
键和F9键), 则立即进行编译、连接和执行, 这三项工作是连续完成的。
下面我们试着建立一个Turbo C名为"HELLO.C"的源程序(因程序很小, 这里就
不画出该程序的轮廓图了):
1. 操作步骤:
(1). 将系统置于DOS提示符下:
(2). 键入命令:
tc hello.c
使系统进入Turbo C集成开发环境, 并建立一个名为HELLO.C的文件。这时, 系统
进入Turbo C编辑环境。
(3). 通过键盘输入程序, 例如:
main()
{
printf("Hello, world ");
}
则程序进入计算机存贮器。
2. 程序存盘
为防止意外事故丢失程序, 最好将输入的程序存贮到磁盘中。在编辑窗口下,
可直接按F2键或按F10键, 再按F键进入File菜单项, 再按S或W键将文件存盘。存
盘时屏幕最底行会显示:
"saving edit file"
3. 编译一个程序
对源程序进行编译有两种方法: (1). 直接按Alt+F9即可。(2). 按F10 键返
回主菜单, 选择Compile项, 屏幕显示Compile 下拉菜单, 从下拉菜单中选择
Compile to .OBJ项, 按回车键。
进入编译状态后, 屏幕会出现一个编译窗口, 几秒钟后, 屏幕显示一闪烁信
息:
Success: press any key
表示编译成功。此时可按任意键, 编译窗口消失, 光标返回主菜单。
如果编译时产生警告Warning或出错Error信息, 这些具体错误信息会显示在
屏幕下部的信息窗中, 必须纠正这些错误。对源程序进行修改, 重新进行编译。
4. 运行程序
源程序经编译无误后, 可以投入运行。具体操作如下:
(1). 如果当前还在编辑状态, 可按Alt+R, 再选择RUN项即可。
(2). 按Ctrl+F9。
程序投入运行时, 屏幕会出现一个连接窗口, 显示Turbo C 正在连接和程序
所需的库函数。连接完毕后, 会出现屏幕突然一闪, 后又回到TC主屏幕, 发生了
什么? 让我们按Alt+F5看看, 此时屏幕被清除, 在顶部显示"Hello, world"字样。 再按任意键, 即可又回到TC主屏幕。
5. 列磁盘文件目录
现在请按Alt+X退出Turbo C, 返回DOS提示符, 键入dir hello.*, 回车, 则
屏幕显示:
HELLO C 42 1-09-93 10:18
HELLO OBJ 221 1-09-93 10:22
HELLO EXE 4486 1-09-93 10:25
...
第一个文件HELLO.C是源文件文本, 在DOS提示符下键入TYPE HELLO.C命令,
可在屏幕上显示该文件的内容。可看到该程序只有42个字节。
第二个文件HELLO.OBJ是Turbo C编择程序产生的二进制机器指令(目标码),
如果用DOS命令TYPE显示该文件, 屏幕可能会出现混乱的信息。
第三个文件HELLO.EXE是Turbo C连接程序产生的实际可执行文件。在DOS 提
示符下键入HELLO并按回车, 屏幕将显示"Hello, world"。

Turbo C 常用的编辑命令

Turbo C编辑程序大约有50条命令, 用以移动光标, 按页查看正文, 查找并
替换字符串等。如下表所示。

表1. Turbo C编辑程序命令
━━━┳━━━━━━━━━┳━━━━━━━━━━━━━
类别 ┃ 功能 ┃ 默认键
━━━╋━━━━━━━━━╋━━━━━━━━━━━━━
┃ 字符左 ┃ Ctrl+S或Left
基 ┃ 字符右 ┃ Ctrl+D或Right
本 ┃ 字左 ┃ Ctrl+A
光 ┃ 字右 ┃ Ctrl+F
标 ┃ 上行 ┃ Ctrl+E或Up
移 ┃ 下行 ┃ Ctrl+X或Down
动 ┃ 上滚 ┃ Ctrl+W
命 ┃ 下滚 ┃ Ctrl+Z
令 ┃ 上一页 ┃ Ctrl+R或PgUp
┃ 下一页 ┃ Ctrl+C或PgDn
━━━╋━━━━━━━━━╋━━━━━━━━━━━━━
快 ┃ 行头 ┃ Ctrl+QS或Home 速 ┃ 行尾 ┃ Ctrl+QD或End
光 ┃ 窗口头 ┃ Ctrl+QE
标 ┃ 窗口底 ┃ Ctrl+QX
移 ┃ 文件头 ┃ Ctrl+QR
动 ┃ 文件尾 ┃ Ctrl+QC
命 ┃ 块头 ┃ Ctrl+QB
令 ┃ 块尾 ┃ Ctrl+QK
┃ 上次光标位置 ┃ Ctrl+QP
━━━╋━━━━━━━━━╋━━━━━━━━━━━━━
输 ┃ 插入模式 ┃ Ctrl+V或Ins
入 ┃ 插入行 ┃ Ctrl+N
与 ┃ 删除行 ┃ Ctrl+Y
删 ┃ 删除至行尾 ┃ Ctrl+QY
除 ┃ 删除光标左边字符┃ Ctrl+H或Backspace
命 ┃ 删除光标处字符 ┃ Ctrl+G或Del
令 ┃ 删除光标右边字符┃ Ctrl+T
━━━╋━━━━━━━━━╋━━━━━━━━━━━━━
┃ 标记块首 ┃ Ctrl+KB
┃ 标记块尾 ┃ Ctrl+KK
┃ 标记单个字 ┃ Ctrl+KT
块 ┃ 复制块 ┃ Ctrl+KC
命 ┃ 删除块 ┃ Ctrl+KY
令 ┃ 块取消 ┃ Ctrl+KH
┃ 块移动 ┃ Ctrl+KV
┃ 读块 ┃ Ctrl+KR
┃ 写块 ┃ Ctrl+KW
━━━╋━━━━━━━━━╋━━━━━━━━━━━━━
┃ 异常结束操作 ┃ Ctrl+U或Ctrl+Break ┃ 制表 ┃ Ctrl+L或Tab
其 ┃ 自动缩进 ┃ Ctrl+OI
┃ 定界符配对 ┃ Ctrl+Q[或Ctrl+Q]
它 ┃ 查找 ┃ Ctrl+QF
┃ 查找并替换 ┃ Ctrl+QA
┃ 查找标记 ┃ Ctrl+QN
┃ 退出编辑 ┃ Ctrl+KQ
━━━┻━━━━━━━━━┻━━━━━━━━━━━━━

Turbo C 程序的调试

一个程序设计好了以后, 通常会有一些错误, 查找和修改程序中的错误是令
人头痛的事。Turbo C集成开发环境提供了一调试装置, 使得这一个工作容易了
许多, 程序调试达到了编译和运行级。

一、TC消息窗口

使用TC最好的理由之一是它允许用户修改语法错误(编译时) 和评估编译器给
出的警告。TC将编译器和连接器发出的消息收集到一缓冲区中, 然后在消息窗口
中显示, 这样在访问源代码的同时, 还能一下看到这些消息。
现将上面的HELLO.C制造一点语法错误, 将第一行包含语句的#去掉, 再去掉
第五行printf语句中的后引号。现在程序看上去是这样的:
include
main()
{
printf("Hello, world );
}
按CTRL+F9重新编译之。编译窗口将显示有多少错误和警告: 应为两个错误, 0个
警告。
当看见编译窗口中的Press anykey提示时, 按空格键, 消息窗口立刻被激活,
亮条出现在第一个错误或警告上, 这时编辑窗口中也会有一亮条--- 它标志着编
译器给出的错误或警告在源代码中的相应位置。
这时可用光标键将消息窗口中的亮条上下移动, 注意到编辑窗口中的亮条也
随着跟踪源代码中错误发生的位置。如果将亮条置于"compile"上, 则编辑器显
示文件的最后位置。
如果消息窗口太长看不见, 可用左、右光标水平滚动消息, 为了一次能够多
看点信息, 可按F5放大消息窗口。放大后, 编辑窗口不可见了, 因此不进行错误
跟踪。现在, 保持分屏模式。
为了改正错误, 将消息窗口中的亮条置于第一个错误消息上, 回车, 光标移
到编辑窗口中错误产生处, 注意, 编辑器状态给出所选消息( 这在放大模式下是
有用的)改正之。(将第一行拿走的#重新写上)。
当不只一个错误时, 可用两种方法来修改下一错误。
第一种方法和前面一样, 按F6回到消息窗口选择想修改的下一条消息。
第二种方法不用回到消息窗口, 只要按Alt+F8, 编译器就会将光标移至消息
窗口中列的下一个错误。按Alt+F7可移至前一个错误。
这两种方法各有长短, 视情况而定。有时源代码中一个愚蠢的错误把编译弄
糊涂了, 产生好多消息, 这时选择修改第一条消息就使得其余的一些错误消息没
有什么意义了, 这种情况发生时, 使用方法一会方便些, 一修改完第一个错误之
后回到消息窗口, 再滚动到下一个有意义的消息上, 选择之。在别的情况下, 按
Alt+F8会方便得多。
记住, Alt+F7和Alt+F8是热键, TC中无论何时均起作用。因此在消息窗口中
按Alt+F8得到的不是当前亮行消息, 而是下一个消息(按Enter选择当前消息)。但如果没别的编译消息, Alt+F8就不起作用了。

Published At
Categories with 认证考试
Tagged with
comments powered by Disqus