Turbo C TOOLS 6.0源程序剖析 Turbo C高级程序设计实例 下PDF电子书下载
- 电子书积分:20 积分如何计算积分?
- 作 者:
- 出 版 社:
- 出版年份:2222
- ISBN:
- 页数:733 页
第一章 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
FLRETVOL 报告给定磁盘驱动器上的卷标 69
FLSETVOL 建立或修改给定磁盘上的卷标 71
文件操作程序设计示例 73
第四章 帮助系统程序设计 75
帮助系统(HL) 75
帮助函数的功能 75
设计帮助窗口 75
编写帮助源文件 75
控制内存分配 77
帮助函数源程序 77
HLCLOSE 释放二叉帮助文件的已存索引 78
HLDISP从帮助文件读取一段帮助信息,显示在屏幕上,供用户浏览 78
HLFRINDX 释放在给定节点以下的所有帮助索引节点 79
HLLOOKUP 从二叉帮助文件中读取一段帮助信息 80
HLPAS2C 转换一个Pascal的字符串为C的格式 88
HLREAD 在视口中显示帮助信息,供用户浏览 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
第十二章 屏幕(视频)编程 376
屏幕操作函数的种类 376
读取屏幕方式信息 376
选择显示设备和方式 376
在显示页之间切换 376
控制/读取光标形状和位置 376
清除和滚动 376
常规的屏幕写入 376
写入一个矩形区域 377
屏幕读取 377
调色板支持 377
对直接视频访问的支持 377
保存和恢复整个显示状态 377
强制快速屏幕访问 378
屏幕(视频)控制函数源程序 378
SCAPAGE 显示(激活)一个显示页 378
SCATTRIB 用指定的显示属性显示一个字符的拷贝 379
SCBLINK 选择前景闪烁或背景亮度 379
SCBORDER 设置当前显示屏幕的边界颜色 380
SCBOX 用图形字符在屏幕上画一个方框 381
SCCHGDEV 切换至彩色或单色显示 384
SCCLRMSG 清除屏幕上的消息 386
SCCURSET 移动当前显示页上的光标 387
SCCURST 返回当前显示页上的光标位置和尺寸 387
SCEQUIP 检测显示硬件环境 388
SCGETVID 记录整个显示状态 397
SCMODE 返回屏幕的显示方式 397
SCMODE4 设置方式4色板和背景颜色 399
SCNEWDEV 选择并设置显示设备,设置字符行数 400
SCPAGE 设置当前显示页 408
SCPAGES 返回显示页的数目 408
SCPAL1 定义一个EGA、VGA、或MCGA色板颜色 410
SCPALETT 定义EGA、VGA或MCGA颜色的整个色板 411
SCPCLR 清除当前显示页 413
SCPGCUR 设置当前页的光标尺寸 414
SCREAD 从屏幕读取一个显示字符及其属性 416
SCRESTPG 恢复一个显示页 417
SCROWS 返回屏幕的字符行数 418
SCSA VEPG保存一个显示页 419
SCSETVID 恢复整个显示状态 420
SCTTYWIN 以TTY方式向矩形区域写入一个字符 422
SCTTYWRT 以TTY方式向屏幕写一个字符 425
SCWRAP 以TTY方式向一个矩形中写入一个字符串,带有整字换行 426
SCWRITE 在屏幕上显示一个字符的多个拷贝 430
VIATRECT 改变屏幕上一个矩形的属性 430
VIDSPMSG 显示一条消息 432
vidirec0 直接从或向视屏适配读取或写入长方形的字符 432
VIHORIZ 在当前显示页上水平滚动正文列 445
VIPTR 将屏幕位置转换成内存地址 447
VIRDRECT 读取屏幕上一个矩形区域中的内容 448
VIRDSECT 将屏幕的一个区域读入内存中更大的矩形区域 449
VISCROLL 垂直滚动当前显示页上的正文行 450
VIWRRECT 向当前显示页上一个矩形区域中写入数据 450
VIWRSECT 显示矩形缓冲区中的一个矩形段 451
第十三章 字符串处理 453
字符串函数的种类 453
对字符串的一部分进行填充 453
查找 453
字符转换 453
处理tab字符 453
字符串处理扩展函数源程序 453
STPEXPAN 将tab字符转换为空格 456
STPJUST 在域中将一个字符串左右对齐或居中 458
STPTABFY 用tab字符替换空格 459
STPXLATE 用翻译表翻译一个字符串 461
STSCHIND 查找字符串中的一个字符,返回它的位置 462
第十四章 实用函数和宏 463
指针和地址 463
内存传送 463
探测指针错误 463
数据压缩 463
ANSI.SYS支持 463
程序环境信息 463
口I/O 464
时钟访问 464
关闭或开放中断 464
扬声器控制 464
算术计算 464
在长字节、字、字节和半字节之间转换 464
设置范围界限 465
数据类型操作 465
各种输出 465
实用函数源程序 465
UTANSI 检测、关闭或重新开放ANSI.SYS 466
UTCHKNIL 报告无效指针赋值,使程序夭折 469
UTCRIT 取得DOS监界段标志的地址 470
UTCTLBRK 设置或返回Ctrl-Break检查的状态 470
UTDOSRDY 报告DOS服务是否可用 471
UTGETCLK 报告自午夜以来BIOS计时脉冲的个数 471
UTINTFLG 打开或关闭硬件中断 472
UTMODEL 报告IMB型号和子型号及BIOS版本 473
UTMOVMEN 不受限制地从内存或向内存任何位置拷贝数据 475
UTNORM 使一个指针具有最小的偏移值 477
UTNULCHK 检测无效的指针赋值 477
UTOFF 返回一个地址的偏移部分 478
UTPEEKB 从任意地址读取一个字节 479
UTPEEKN 从任意地址读取多个字节的数据 479
UTPEEKW 从任意地址读取一个字 479
UTPLONG 将一个指针转换为指向20位物理地址的指针 480
UTPOKEB 在任意地址存放一个字节的数据 480
UTPOKEN 在任意地址存放多个字节的数据 480
UTPOKEW 在任意位置写入一个字的数据 481
UTSAFCPY 以确保不跨越段界的方式拷贝数据 481
UTSEG 返回任意地址的段部分 482
UTSLEEP 暂停处理直至经过几个计时脉冲之后 482
UTSPKR 打开或关闭扬声器 483
UTSQZSCN 压缩一个屏幕图象 484
UTTIM2TK 将时间转换为计时脉冲计数 489
UTTK2TIM 将计时脉冲计数转换为24小时制时间 489
UTTOFAR 用段和偏移构造一个双字指针 490
UTTOFARU 用一个段和偏移构造一个泛双字指针 491
UTUNSQZ 还原一个压缩屏幕图象 491
实用程序函数设计示例 493
第十五章 窗口系统高级程序设计 498
窗口功能概述 498
窗口函数的种类 498
建立和释放窗口结构 498
显示和删除窗口 498
虚拟窗口 498
窗口输出 498
窗口输入 499
滚动和清除 499
控制属性 499
控制光标 499
控制窗口任选项 499
使用Turbo C的字符窗口 500
为WNREAD进行窗口输入做准备 500
使用高级窗口特性 500
显示和更新窗口 500
虚拟窗口 500
不可删除的窗口 500
控制内存分配 500
窗口扩展函数源程序 501
WNATRBLK 修改窗口中一个矩形块的属性 501
WNATRSTR 改变窗口中一片连续位置的属性 502
WNATTR 改变当前窗口的属性 504
WNCHGEVN 加入或修改WNREAD认可的一个用户响应 504
WNCREATE 建立一个窗口结构 505
WNCOVER 如果被一给定的长方形区域遮盖,则标为低层窗口 506
WNCREAT0 分配和创建一窗口结构 507
WNCURMOV 移动当前窗口的光标 509
WNCUPRPOS 返回当前窗口的光标位置 510
WNCURSOR 激活一个窗口光标 511
WNDSPLAY 在同尺寸视口中显示一个窗口 512
WNCURTRK 移动窗口的光标,如果必要的活调整数据区源 513
WNDSTROY 废弃一个窗口结构 515
WNERROR 记录窗口或选单的系统错误 516
WNFIELD 对窗口中的一个域进行编辑 516
WNFORGEI 从屏幕位置脱离窗口,但并不清除屏幕 518
WNGETIMG 读取屏幕长方形区域的图象 519
WNGETOPI 读取窗口信息项或状态 521
WNHIDE 删除窗口但仍与视频显示设备和显示页联连 524
undisp 暂时删除(不显示)屏幕上由一长方形区域遮盖的窗口 527
cocovr 标志非覆盖的窗口 528
upcovr 检查高层窗口是否覆盖长方形区域 529
redisp 重新显示指定窗口以上的被暂时隐藏删除的窗口 530
WNHORIZ 水平滚动当前窗口 531
WNINITEV 为WNREAD安装缺省的窗口事件 532
WNCMOVE 移动窗口的光标 535
WNSETWIN 设置编译器native文本窗口的尺寸 536
WNCHKDM 检查编译器的native文本窗口的尺寸和大小 537
WNGETATR 得到当前native文本窗口的属性 537
WNSETATR 设置当前native文本窗口的属性 538
WNNEEDUP 标志一窗口为无用,如果可能进行更新 538
WNNUPBLK 标志一窗口为无用,如果可能更新一部分 539
WNORIGIN 在视口中称动窗口 540
WNOVRLAP 报告两个长方形区域是否覆盖 542
WNPGADD 增加窗口到在一设备一或显示页上显示的窗口的链表上 542
WNPGREM 从显示在一设备或显示页上的窗口链表上删除 543
WNPIMBLK 输出窗口的一部分到屏幕 544
WNPOLL 查询属于特定集的键盘或鼠标事件一次 546
WNPRINTF向当前窗口写入一个格式化的字符串 548
WNPUTBOR 沿着长方形区域显示一边界 549
WNPUTSEN 显示窗口的sensor表 552
WNQUERY 返回经窗口得到的来自用户的字符串 555
WNRDBUF 读取当前窗口中一片连续位置的内容 558
WNREAD 允许用户在虚拟窗口中浏览 560
POLL_EVENT 查询窗口的鼠标或键盘事件一次 566
WNREDRAW 重现显示在当前显示页上的全部窗口 571
WNREMEVN 删去WNREAD接受的一个用户响应 573
WNREMOVE 从屏幕上取消一个窗口 575
WNRESPRV 恢复窗口先前的屏幕内容 575
WNRETEVN 从窗口列表中返回一窗口事件记录 576
WNRETINF 返回窗口当前光标和尺寸的信息 578
WNREVUPD 用显示的数据更新已保存的窗口图象 579
WNSCRBLK 在窗口中以任意方向滚动一个矩形区域 582
WNSCRLBR 向窗口加入一个滚动箭头 584
WNSCROLL 垂直滚动当前窗口 589
WNSELECT 选择用于I/O的窗口 589
WNSETBUF 为WNPRINTF分配内部缓冲区 590
WNSETCUR 设置当前窗口的状态、尺寸和位置 591
WNSETOPT 设置窗口控制项 592
WNSHOBLK 在视口间隙中显示一个窗口数据块 597
WNUNHIDE 重新显示隐藏的窗口 603
WNUPDATE 将挂起的输出写入窗口 606
WNVALEV0 验证窗口事件 607
WNVALNO0 验证窗口节点 607
WNVALWI0 验证BIWNDOW结构 608
WNVDISP 在视口中显示一个虚拟窗口 608
WNWRAP 以TTY方式向当前窗口写入一个字符串,常有整字换行 612
WNWRBUF 向当前视口中的一片连续位置写入字符 614
WNWRRECT 写入窗口的一个矩形区域 616
WNWRSTR 以TTY方式向当前窗口写入一个字符串 618
WNWRSTRN 以TIY方式向窗口写入一个字符串,带有任选项 619
WNWRTIY 以TTY方式向当前窗口写入一个字符 623
WNWRTTYX 写一字符到一TTY方式的窗口 623
WNZAPEVN 删除WNREAD认可的窗口事件表 624
WNZAPSEN 释放窗口的sensor列表 625
附录A 使用的汇编头文件 626
COMP T2S.MAC 626
COMP T2M.MAC 626
COMP T2C.MAC 627
COMP T2L.MAC 627
COPM T2H.MAC 628
BEGINASM.MAC编译依赖的符号和宏 628
附录B 创建功能强大的函数库批命令 634
创建库文件的LIB程序的响应文件(LIBRESP) 636
附录C 函数包使用的头文件 639
BEDIT.H 域编辑函数的头文件 639
BFILES.H 文件和目录函数的头文件 642
BGENWIN.H 禁止提供编译器本地文本窗口支持的头文件 644
BHELP.H 帮助函数的头文件 644
BINTERV.H 插入函数的头文件 649
BINTRUPT.H 中断服务函数的头文件 653
BKEYBRD.H BIOS键盘函数的头文件 656
BKEYS.H 定义键码的头文件 659
BLAISE.H 所有函数的头文件 676
BMEM.H 内存管理函数的头文件 676
BMENU.H 菜单函数的头文件 677
BMOUSE.H 鼠标函数的头文件 684
BNATVWN.H 支持编译器本地文本窗口的头文件 688
BPRINT.H 支持打印机管理的头文件 688
BSCREENS.H 屏幕函数的头文件 689
BSTRINGS.H 字符串函数的文件 694
BUTIL.H 实用函数的头文件 694
BVIDEO.H 直接存取视屏硬件函数的头文件 702
BWINDOW.H 窗口函数的头文件 703
- 《英汉翻译理论的多维阐释及应用剖析》常瑞娟著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019