《Turbo C TOOLS6.0源程序剖析TURBO C高级程序设计实例 上》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:李文编译
  • 出 版 社:北京:北京市新闻出版社
  • 出版年份:1991
  • ISBN:
  • 页数:375 页
图书介绍:

第一章 Turbo C工具源程序的使用说明 1

函数包介绍 1

函数的分类 1

软件需求 2

硬件需求 2

支持的编译器版本和内存模式 2

警告和使用注意事项 3

异常错误及解决方法 3

提取源代码 3

打印源代码 4

从源代码中取消TAB 4

重建函数库 4

重建示例程序 5

C和汇编模块及宏 5

函数库建造说明 7

利用数包的程序设计 7

编程风格、编译警告和头文件 7

修改Turbo C TOOLS 8

源代码约定 8

插入码函数程序设计示例 8

第二章 域编辑编程扩展 12

域编辑函数的种类 12

数据项和编辑 12

编辑键定义 12

编辑操作和缺省的按键分配 12

域编辑函数源程序 14

EDBASE编辑和返回一个用户响应 14

EDBUFFER对编辑缓冲区执行编辑动作 22

EDCHGKEY加入或修改EDFIELD和WNFIELD所认可的一个按键 30

EDFIELD对屏幕上的一个域进行编辑 32

EDINITKY安装EDFIELD和WNFIELD所接受的缺省按键 34

EDREDUCE把连续的空白转换成单个空格 36

EDREMKEY删去EDFIELD和WNFIELD所接受的一个按键 37

EDRETINF返回当前光标和视屏信息 38

EDRETKEY报告一个按键的编辑动作 39

EDSETCUR设置光标的尺寸和位置 40

EDWRAP向编辑区写入字符时,带有整字换行 41

EDWRRECT向屏幕写入一长方形图形 42

EDZAPKEY删去EDFIELD和WNFIELD所接受的按键队列 43

编辑函数程序设计示例 43

KEYCTRL.C键控制函数的样例 44

ENTRYEDT.C是面向窗口多编辑域的程序 45

第三章 文件操作 52

文件管理函数(FL) 52

文件管理函数的种类 52

维护卷标 52

杂类 52

文件操作函数源程序和使用参考 52

FLDOLOCK对已打开文件一个文件段上锁或解锁,必要时等待 52

FLFLUSH迫使挂起的文件输出写到磁盘上 54

FLGETDTA返回磁盘传送地址 55

FLLOCK对已打开文件的一个文件段上锁或解锁 55

FLNORM验证一个文件名,把它转化成标准形式 56

FLPROMPT从标准输入中返回一行,可以使用提示信息 66

FLPUTDTA设置磁盘传送地址(DTA) 67

FLREMVOL从给定的磁盘上删除卷标(如果有的话) 67

FRETVOL报告给定磁盘驱动器上的卷标 69

FLSETVOL建立或修改给定磁盘上的卷标 71

文件操作程序设计示例 73

第四章 帮助系统程序设计 75

帮助系统(HL) 75

帮助函数的功能 75

设计帮助窗口 75

编写帮助源文件 75

控制内存分配 77

帮助函数源程序 77

HLCLOSE释放二叉帮助文件的已存索引 78

HLDISP从帮助文件读取一段帮助信息,显示在屏幕上,供用户浏览 78

HLFRINDX释放在给定节点以下的所有帮助索引节点 79

HLLOOKU从二叉帮助文件中读取一段帮助信息 80

HLPAS2C转换一个Pascal的字符串为C的格式 88

HLREAS在视口中显示帮助信息,供用户浏览 89

帮助程序示例 94

第五章 用C进行中断服务子程序的设计 128

概述 128

ISR的一般用法 128

建立ISR 128

驻留程序 128

调用步骤 128

删除 129

按惯例过滤中断 129

从ISR中的特殊退出 129

扩展函数源程序 130

ISCALL对软件中断调用中断服务例程进行模拟 130

ISCURPRC返回或设置当前执行的进程 134

ISGETVEC返回一个中断向量 134

isdispat中断服务子程序调度程序 135

ISINSTAL安装一个中断服务例程(ISR) 144

ISPREP预备一个ISR控制块 145

ISPUTVEC设置一个中断向量 147

ISREMOVE去除一个驻留程序 148

ISRESERV保留ISR所需的动态内存 149

ISRESEXT中止一个程序但保持驻留 150

ISSENSE检测一个已安装的中断服务例程(ISR) 151

使用中断子程序的程序设计 152

CTLBRK.C说明control-break处理子程序的实现和使用 156

CRITERR.C说明严重错误处理子程序和使用 157

第六章 内存驻留程序设计的插入码 161

概述 161

插入码实用函数 161

建立一个插入函数 161

调度 161

调用步骤 162

重新调度 162

摘除 162

高级用法 162

使用扩展键盘BIOS 162

暂时使一个插入函数失效 163

选择插入过滤程序 163

防止异步通讯拥塞 163

插入码扩展码源程序 163

IVCTRL报告本程序中插入控制块的地址 163

IVDETECT检测已安装的插入函数,即使它被部分覆盖 176

IVDISABL使一个插入函数失效 181

IVINSTAL安装一个插入函数 182

IVSENSE检测一个已安装的插入函数是否是可删除的 192

IVVECS设置或返回插入过滤程序所使用的中断向量 192

第七章 高级键盘管理程序设计 194

增强键盘 194

键盘函数的功能 194

键盘输入 194

处理超前键入缓冲区 194

处理移位键 194

使用增强键盘 194

使用键控制函数 194

取得键码 195

高级特性:键控制函数 195

调用步骤 195

高级键盘管理函数源程序和使用参考 195

KBEQUIP检测键盘环境 196

KBEXTEND选用扩展的或一般的BIOS键盘服务 197

KBFLUSH废弃所有在键盘缓冲区中等待的按键 198

KBGETKEY等待读入下一个按键 198

KBKCFLSH通过键控制函数废弃所有的等待按键 199

KBPLACE在键盘缓冲区中放置一个按键 200

KBPOLL通过一个键控制函数查看下一个等待按键 202

KBQUERY从标准IBM控制台读邓用户的响应 203

KBQUEUE报告键盘缓冲区总容量及剩余容量 206

KBREADY检查下一个等待按键 207

KBSCANOF返回一个字符的键码 209

KBSET设置移位键的当前状态 210

KBSTATUS报告移位键的当前状态 211

KBSTUFF强行将一个字符串送入BIOS超前键入缓冲区 212

KBWAIT等待并通过键控制函数读取下一个按键 214

CMKEY.C键盘宏程序示例 215

第八章 内存管理高级程序设计 220

内存管理函数 220

内存管理函数源程序 220

MMCTRL读取DOS内存控制块 220

MMFIRST报告第一个内存块的地址 221

MMSIZE报告一个程序的尺寸 222

第九章 选单程序设计 223

选单函数功能概述 223

选单函数的种类 223

建立、显示和释放选单 223

定义标准选项和按键 223

定义Lotus形式的选项 223

使用鼠标器的准备工作 223

读取用户的反应 223

亮条操作 223

高级选单特性 223

按键动作和亮条移动 224

缺省的键分配 224

控制内存分配 225

选单扩展函数源程序和使用参考 225

MNATR改变菜单在项的属性 225

MNCREATE建立一个包含单信息的选单结构和窗口 227

MNCREAT0分配并创建一个菜单结构 227

MNDEFKEY增加约束菜单的缺省键 228

b_mndefkey包含MNDEFKEY使用的缺省键表 229

MNDLITMS释放选项表中所有项的内存 231

MNDLKEYS释放键表中使用的所有的键的内存 232

MNDSPLAY在同尺寸视口中显示一个选单 232

MNDSTROY从屏幕上取消一个选单,废弃其数据结构 233

MNFINDSL找到给出起始坐标的菜单的第一可选项 234

MNHILIT0移动或删除菜单的高亮条或项描述 236

MNHILITE移动或取消选单亮条及选项说明 238

MNITEM插入、修改或删除一个选项 239

MNITMKEY向选单加入一个选项,为它分配选择字符 244

MNKEY加入、修改或取消一个选单的键分配 245

MNLITEM加入、修改或取消一个Lotus形式的选项 249

MNLITKEY加入一个LOTUS形式的选项,为它分配选择字符 250

MNLREAD通过Lotus形式的选单读入一个用户响应 252

MNREAD从给定的开始行和列使用亮条读取菜单 253

MNMCHITM匹配一说明条件的菜单项 274

MNMCHKEY匹配一说明的键 275

MNMOUSE加入、修改或删除一个选单认可的鼠标器事件 277

MNMSTYLE设立一个标准选单鼠标器格式 281

MNREAD读取来自选单的用户响应 284

MNVALMN0检查BMENU结构的有效性 306

MNVDISP在视口中显示一个虚拟选单 307

示例程序 308

源程序(MENU.C) 308

源程序(PULLMENU.C) 321

第十章 鼠标器编程 333

鼠标器事件的种类 333

访问鼠标器状态 333

控制鼠标器位置 333

控制鼠标的外观 333

对鼠标器硬件中断的反应 333

其它鼠标器操作 333

处理鼠标器中断 334

调用屏蔽:相关事件组 334

调用步骤 334

鼠标器编程函数源程序函数使用参考 334

MOAVOID在指定区域中隐藏鼠标 335

MOBUTTON报告鼠标器按钮的按下/释放历史 336

mocatch捕获鼠标器按钮的按下与释放 338

MOCHECK检查最近发生的鼠标器事件 342

MOCURMOV移动鼠标 348

MOEQUIP检查鼠标器驱动程序的存在 349

MOGATE鼠标器驱动程序的入口 350

MOGETMOV报告自上次查询以来物理鼠标器的移动 351

MOGRAPH设置鼠标器图形方式光标 351

MOHANDLR安装或摘除中断处理程序 352

MOHARD设置鼠标器硬件字符方式光标 355

MOHIDE隐藏或显示鼠标 356

moinst无条件安装鼠标器中断处理子程序 357

MOJUMP设置鼠标器加速阈值 357

MOLITYPEN使鼠标器光笔模拟有效或失效 358

MOPRECLK安装或删除MOCHECK所有的内部例程 359

MORANGE设置鼠标器范围界限 360

MORESET重置鼠标器驱动程序 361

MOSOFT设置鼠标器软件字符方式光标 361

MOSPEED设量鼠标器敏度 362

MOSTAT报告鼠标器位置和按钮状态 363

movars一些MO函数使用的全程变量:b_mocatch,b_momask,b_modispat,b_mohanmask 363

MOUSEHAN.C鼠标中断处理子程序演示程序 364

第十一章 打印机编程 368

BIOS打印机接口 368

与PRINT程序的接口 368

打印机控制函数源程序 368

PRCANCEL删除假脱机打印队列中一个或全部文件 368

PRCHAR通过BIOS向打印机机发送一个字符 369

PRERROR返回解释错误代码的字符串,这些错误代码来自PR(打印机)函数 370

PRGETQ报告假脱机打印队列中的一个文件名 371

PRINIT通过BIOS初始化一个打印口 373

PRINSTLD检查驻留式假脱机打印系统PRINT是否已安装 373

PRSPOOL将一个文件提交给假脱机打印系统 374

PRSTATUS通过BIOS报告打印机的状态 375