1 / 23
文档名称:

第13章 C语言综合应用程序设计.ppt

格式:ppt   页数:23
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第13章 C语言综合应用程序设计.ppt

上传人:管理资源吧 2012/2/7 文件大小:0 KB

下载得到文件列表

第13章 C语言综合应用程序设计.ppt

文档介绍

文档介绍:第13章
C语言综合程序设计
多模块程序设计基础
图形处理基础
与操作系统的接口
C程序中的汉字显示技术
在软件设计过程中,当用计算机高级语言进行程序设计时,对于完成大规模的程序设计,往往按其问题的需要,将程序划分成若干段去编写。
一个语言源程序由若干模块组成,这些模块可以分别装配成几个源程序文件,这些源程序文件可以分别进行编辑、编译,经连接后形成可执行文件。
使用多模块编程技术的处理过程大致如下:
首先将一个大的源程序根据其功能合理地划分为若干个小的源程序,每个小源程序均以程序文件()的形式保存在磁盘上。
再用编译器进行编译,将工程文件中指定的多个文件进行编译,生成多个目标文件和一个可执行的文件。
当某个文件有错时,编译器会报告错误。用户可进行修改,修改后再编译时,编译器只会对修改文件进行重新编译,其它模块不再被编译,原来生成的目标文件仍可使用。
多模块程序设计基础
一、多模块程序的建立
二、程序模块之间的通讯
在C语言的多模块编程中,模块间通信往往使用外部变量。
图形处理基础 一、图形程序运行条件
在编制图形处理程序,使用图形函数之前,必须在程序中对使用的图形系统进行初始化,把屏幕显示适配器设置为一种图形模式,选择适当类型的图形显示适配器驱动程序,设置好驱动程序的寻找路径名等
二、基本图形处理函数
1、图形初始化函数
显示模式控制函数initgraph
函数原型:
void far initgraph(int far *graphdriver, int far *graphmode, char far *path)
函数的功能,把图形适配器设置为一种图形模式,将选择的图形驱动程序(在BGI文件中)装入到内存。
检测显示器硬件函数detectgraph
函数原型:
void far detectgraph(int far *graphdriver,int far *);
函数功能:完成对适配器的检查,获取显示器类型号及相应的显示模式,把显示类型号赋予graphdriver,显示模式赋予graphmode。graphdriver和graphmode的意义与函数initgraph相同。
清屏函数cleardevice
函数原型:
void far cleardevice(void);
函数功能:清除屏幕上的其它信息,函数作用范围为整个屏幕。
恢复显示方式closegraph
函数原型:
void far closegraph(void);
函数功能:当图形处理工作结束后,关闭图形系统,返回文本工作方式。
恢复工作模式函数restorecrtmode
函数原型:
void far restorecrtmode(void);
函数功能:恢复屏幕显示模式为调用initgraph前的设置
设置图形工作模式函数setgraphmode
函数原型:
void far setgraphmode(void);
函数功能:将系统设置成图形模式并清屏。
注意:以上两个函数常交互使用,可使显示器工作方式在图形和文本方式之间来回切换,这在编制菜单程序和说明程序时很有用处。
2、基本图形处理函数
画点函数原型:
void far putpixel(int x,int y,int color); /*画象素点函数*/
画线函数原型:
void far line(int startx,int starty,int endx,int endy); /*画线函数*/
说明:
函数putpixel在点(x,y)处画一个颜色为color的象素点。
函数line在(startx, starty)和(endx,int endy)两点之间画一条直线,颜色为系统当前颜色。
画多边形函数原型如下:
void far drawpoly(int numpoints,int far *points);
函数功能:用当前颜色画一个顶点数为numpoints的多边形,各个顶点坐标(x,y)连续存放在points指向的整型数组中。
画矩形函数原型如下:
void far rectangle(int left, int top, int right, int bottom);
函数功能:用当前颜色画一个以(left, top)为左上角坐标,以(right, bottom)为右下角坐标的矩形。
画条形图函数有两个,其原型分别是:
void far bar(int left,int top, int right, int bottom); /*二维实心条形图*/
void far bar3d(int left, int top, int right, int bottom, int depth, int topflag); /*三维条形图*/