C高级实用程序设计PDF电子书下载
- 电子书积分:15 积分如何计算积分?
- 作 者:王士元编著
- 出 版 社:北京:清华大学出版社
- 出版年份:1996
- ISBN:7302020639
- 页数:499 页
第1章 概述 1
1.1 C语言的发展状况 1
1.2 C语言的编程格式 2
1.2.1 C语言程序的结构特点 2
1.2.2 模块化的程序设计 7
1.2.3 大程序的设计风格 9
1.3 Turbo C 2.0的程序设计开发过程 10
1.3.1 Turbo C集成开发环境 11
1.3.2 Turbo C的命令行编译连接 11
第2章 PC机存储器结构及变量存储方式 13
2.1 PC机存储器结构 13
2.1.1 系统存储器(System Memory) 13
2.1.2 扩展存储器(Extended Memory) 14
2.1.3 关于HMA(高端存储器)的使用 14
2.1.4 扩充存储器(Expanded Memory) 15
2.2 存储器的分段与物理地址的形成 16
2.3 与地址操作有关的几个宏 18
2.4 寄存器与伪变量 19
2.4.1 80x86的内部寄存器 19
2.4.2 伪变量 22
2.4.3 伪变量的使用 23
2.5 保护虚地址方式下的段和偏移 24
2.6 扩展存储器的使用实例 28
2.6.1 程序1 28
2.6.2 程序2 31
2.7 变量的存储方式 32
2.7.1 数据类型与存储字节数 33
2.7.2 变量的存储类型 34
第3章 关于DOS的说明及BIOS和DOS调用 38
3.1 关于DOS的说明 38
3.1.1 DOS的基本组成 38
3.1.2 关于DOS的启动 40
3.1.3 关于BIOS 40
3.1.4 中断向量表 41
3.2 BIOS 41
3.2.1 ROM BIOS的使用 42
3.2.2 视频BIOS 42
3.2.3 BIOS的调用 42
3.3 DOS调用 43
3.4 BIOS和DOS系统调用函数 44
3.4.1 int86()函数 44
3.4.2 int86x()函数 46
3.4.3 intdos()函数 47
3.4.4 intdosx()函数 48
3.4.5 intr()函数 49
第4章 指针、函数 51
4.1 指针的赋值 51
4.1.1 指向一个简单变量的指针 52
4.1.2 指向数组的指针 52
4.1.3 指向函数的指针 55
4.1.4 指向结构的指针 57
4.2 指针数组 59
4.3 二级指针 60
4.4 指针型函数 62
4.5 指针的分类 63
4.5.1 近程指针(near型) 64
4.5.2 远程指针(far型) 64
4.5.3 巨指针(huge) 65
4.6 函数 66
4.6.1 函数的说明 67
4.6.2 函数的类型与定义 68
4.6.3 函数的调用 70
4.6.4 函数的参数传送 72
4.6.5 main()函数中的参数 84
4.7 函数的递归调用 85
4.8 函数的组织 87
第5章 内存模式与动态存储结构 88
5.1 内存模式(编译模式) 88
5.1.1 微小模式(Tiny) 88
5.1.2 小模式(Small) 89
5.1.3 中模式(Medium) 89
5.1.4 紧凑模式(Compact) 89
5.1.5 大模式(Large) 90
5.1.6 巨模式(Huge) 91
5.2 各内存模式下缺省段名和堆的分配 91
5.3 栈的结构 93
5.4 堆的结构 95
5.5 堆管理函数 96
5.5.1 示例1—使用coreleft()和malloc()函数例 97
5.5.2 示例2—使用farcalloc()函数例 98
5.5.3 示例3—堆和栈操作演示例 99
5.5.4 示例4—使用堆空间指针例 100
5.6 动态存储例——链表 102
5.6.1 单链表结构 102
5.6.2 链表的建立 103
5.6.3 按升序排列的单链表 105
5.6.4 单链表的输出及节点删除 107
5.6.5 单链表程序例 108
5.6.6 双链表 115
5.7 关于联合的说明 123
第6章 文件 126
6.1 文本流和二进制流 127
6.2 流与文件 128
6.3 标准文件的输入输出操作 129
6.3.1 标准文件输入输出 130
6.3.2 关于FILE数据结构 130
6.3.3 标准文件打开函数fopen() 131
6.3.4 标准文件关闭函数fclose() 135
6.3.5 标准文件的读写 136
6.3.6 清除和设置文件缓冲区的函数 138
6.3.7 应用例 139
6.3.8 文件的随机读写函数 141
6.4 非标准的文件输入输出操作 147
6.4.1 建立一个新文件或重写一个已有文件的函数creat(),_creat(),creatnew() 148
6.4.2 非标准的文件打开函数 149
6.4.3 关于系统标准输入输出设备的文件代号 151
6.4.4 非标准文件的关闭函数close() 151
6.4.5 非标准文件的读写函数 151
6.4.6 删除文件函数unlink() 154
6.4.7 移动文件指针的函数lseek() 154
第7章 I/O接口的输入输出 158
7.1 I/O接口的寻址方式 160
7.2 I/O接口的输入输出函数 161
7.2.1 接口输入函数 162
7.2.2 接口输出函数 162
7.3 应用例 163
7.3.1 发声程序 163
7.3.2 信号采集程序 164
第8章 中断服务程序的编写 167
8.1 PC机的中断类型 167
8.1.1 软中断 168
8.1.2 硬中断 168
8.1.3 中断向量表 168
8.1.4 中断向量表的填入 169
8.2 用Turbo C编写中断程序的方法 169
8.2.1 编写中断服务程序 170
8.2.2 安装中断服务程序 170
8.2.3 中断服务程序的激活 171
8.3 中断服务程序例 174
8.3.1 硬中断演示程序——秒表 174
8.3.2 用geninterrupt()函数产生中断 177
8.3.3 扬声器唱歌程序 178
8.3.4 采用中断方式的信号采集程序 181
8.3.5 定时中断程序 185
8.3.6 能被Turbo C程序调用的汇编语言中断程序 189
第9章 驻留程序的设计 194
9.1 几个特殊区域 194
9.1.1 程序段前缀PSP和DTA 194
9.1.2 DOS环境块 196
9.2 TSR程序设计 197
9.2.1 TSR的中断服务部分 198
9.2.2 程序的驻留 198
9.2.3 关于DOS重入问题的解决方法 199
9.2.4 TSR程序设计中另外的几个问题 200
9.2.5 几个有关的库函数说明 201
9.3 用户激活驻留程序TSR的方法 202
9.4 键盘编码 204
9.5 键盘缓冲区 207
9.6 键盘操作函数bioskey() 208
9.7 程序例 211
9.7.1 用int5激活驻留程序 211
9.7.2 用Ctrl-Break激活驻留程序 215
9.7.3 一个完整的驻留程序 217
9.8 鼠标器 229
9.8.1 鼠标器工作原理简介 229
9.8.2 鼠标器的INT 33H功能调用 230
9.8.3 用鼠标器作图 233
9.8.4 用鼠标器热键激活TSR程序 236
第10章 Turbo C作图 241
10.1 图形显示的坐标和象素 241
10.1.1 图形显示的坐标 241
10.1.2 象素 241
10.2 图形显示器与适配器 242
10.3 显示器工作方式 244
10.4 Turbo C支持的适配器和图形模式 244
10.5 图形系统的初始化 246
10.5.1 图形系统的初始化函数 246
10.5.2 图形系统检测函数 247
10.5.3 清屏和恢复显示方式的函数 248
10.6 基本图形函数 249
10.6.1 画点函数 249
10.6.2 有关画图坐标位置的函数 249
10.6.3 画线函数 250
10.6.4 画矩形和条形图函数 251
10.6.5 画椭圆、圆和扇形图函数 252
10.7 颜色控制函数 253
10.7.1 颜色设置函数 254
10.7.2 调色板颜色的设置 255
10.8 画线的线型函数 259
10.8.1 设定线型函数 259
10.8.2 得到当前画线信息的函数 261
10.9 封闭图形的填色函数及有关画图函数 261
10.9.1 填色函数 262
10.9.2 用户自定义填充函数 262
10.9.3 得到填充模式和颜色的函数 264
10.9.4 与填充函数有关的作图函数 265
10.9.5 可对任意封闭图形填充的函数 266
10.10 屏幕操作函数 267
10.10.1 屏幕图象存储和显示函数 267
10.10.2 设置显示页函数 269
10.11 图视口操作函数 271
10.11.1 图视口设置函数 271
10.11.2 图视口清除与取信息函数 271
10.12 图形方式下的文本输出函数 274
10.12.1 文本输出函数 274
10.12.2 定义文本字型函数 277
10.12.3 文本输出字符串函数 278
10.13 综合应用例 281
10.13.1 用户自定义图模填充长方框图象 281
10.13.2 画圆饼图程序 283
10.13.3 画条形图程序 285
10.13.4 画函数曲线 287
10.14 图形程序运行的条件 289
10.15 图形方式下字型输出的条件 290
第11章 菜单设计与动画技术 292
11.1 菜单 293
11.2 菜单设计要点 293
11.3 两个菜单程序 294
11.3.1 菜单程序1 294
11.3.2 菜单程序2 302
11.4 动画技术 320
11.4.1 利用动态开辟图视口方法 320
11.4.2 利用显示页和编辑页交替变化 320
11.4.3 利用画面存储再重放的方法 321
11.4.4 直接对图象动态存储器进行操作 323
11.5 一个动画例子 323
第12章 文本的屏幕输出 327
12.1 文本方式的控制 327
12.1.1 文本方式控制函数 327
12.1.2 文本方式颜色控制函数 328
12.1.3 字符显示亮度控制函数 329
12.2 窗口设置和文本输出函数 330
12.2.1 窗口设置函数 331
12.2.2 控制台文本输出函数 331
12.3 清屏和光标操作函数 331
12.3.1 清屏函数 331
12.3.2 光标操作函数 332
12.4 程序例 333
12.5 屏幕文本移动与存取函数 334
12.5.1 屏幕文本移动函数 334
12.5.2 屏幕文本存取函数 334
12.6 状态查询函数 336
12.6.1 得到屏幕文本显示有关信息的函数 336
12.6.2 得到当前光标位置的函数 338
12.7 综合应用例 338
12.7.1 一个弹出式菜单 338
12.7.2 一个下拉式菜单 342
第13章 屏幕图形的存取 347
13.1 屏幕图形与VRAM地址的关系 347
13.2 存取屏幕图象时地址指针的设置 348
13.3 VRAM的位面结构和对它的读写操作 349
13.3.1 VRAM的位面结构 349
13.3.2 将VRAM位面信息存入文件 350
13.3.3 将文件图象信息写入VRAM位面 351
13.4 程序例 352
13.4.1 将屏幕图形存入文件的程序 352
13.4.2 将图形文件显示到屏幕上的程序 353
13.4.3 存多幅图形的程序 354
13.4.4 显示图象程序例 357
13.5 屏幕图形和图形文件的打印输出 359
13.5.1 打印机适配器及其寄存器结构 359
13.5.2 点阵式打印机打印图形的原理 360
13.6 屏幕输出打印编程要求 363
13.6.1 打印屏幕图形例 363
13.6.2 打印图形文件例 366
13.7 用单色打印机打印彩色图象的方法 368
13.7.1 模式法 369
13.7.2 抖动法 369
13.7.3 用模式法打印图象例 370
13.7.4 用32级灰度抖动法打印图象例 373
13.7.5 用16级灰度抖动法打印图象例 378
第14章 C程序中汉字显示技术 382
14.1 可在中文DOS下显示汉字的程序编制 382
14.2 在西文DOS下C程序显示汉字技术 385
14.2.1 国标汉字字符集与区位码 385
14.2.2 汉字的内码 386
14.2.3 内码转换为区位码与字模显示技术 387
14.2.4 程序例 388
14.3 在西文DOS下,24×24点阵汉字的显示与放大 391
14.4 用直接写显示存储器VRAM的方法显示汉字 394
14.4.1 将汉字字模装入VRAM的方法一 396
14.4.2 程序例 399
14.4.3 将汉字字模装入VRAM的方法二 401
14.4.4 24×24打印字模转换为24×24点阵显示字模 403
14.4.5 程序例 404
14.5 汉字的任意倍数放大 407
14.6 利用BIOS中断调用显示汉字 411
14.6.1 文本方式下显示汉字的原理 411
14.6.2 中文菜单 414
14.7 建立一个小型专用汉字库 419
14.7.1 库的建立方法 420
14.7.2 建立小型汉字库的程序例 420
14.7.3 利用小型汉字库显示汉字程序例 426
第15章 C语言与汇编语言的混合编程 429
15.1 汇编语言子程序使用的场合 429
15.2 汇编语言程序的结构 430
15.2.1 常规的汇编语言程序结构 430
15.2.2 用简化段定义的程序结构 435
15.2.3 简化段定义的伪指令 436
15.2.4 段组定义伪指令 437
15.2.5 定义内存模式伪指令 438
15.2.6 段名的缺省名 438
15.2.7 定义段次序 439
15.2.8 一个用简化段定义的汇编程序标准框架 440
15.3 能被C程序调用的一个汇编子程序框架 441
15.3.1 可被C调用的一般程序结构 441
15.3.2 按C编译要求段序的一个汇编子程序框架 442
15.4 由Turbo C自动产生的一种汇编语言程序结构框架 443
15.5 用简化段定义的汇编语言子程序 445
15.6 编写汇编语言子程序的几个问题 446
15.6.1 变量和函数的相互调用 446
15.6.2 参数的传递原则 448
15.6.3 汇编语言子程序的返回值 450
15.6.4 汇编语言子程序中寄存器的使用 451
15.7 混合编程的编译和连接 452
15.7.1 在Turbo C集成环境下进行编译和连接 452
15.7.2 用Turbo C命令行编译程序TCC进行编译连接 452
15.8 混合编程实例 453
15.8.1 程序1——同为小内存模式的混合编程 453
15.8.2 程序2——C程序和汇编子程序是不同的内存模式 454
15.8.3 程序3——中内存模式下的混合编程 455
15.9 Turbo C程序中内嵌汇编指令行 458
15.10 内嵌汇编指令的C程序编译连接方法 461
15.11 嵌入汇编指令行的程序例 462
15.12 汇编语言程序调用C函数 465
15.13 汇编语言调用C函数例 466
15.13.1 程序1——无参调用 466
15.13.2 程序2——有参调用 467
第16章 C与FoxBASE(dBASE)的接口技术 470
16.1 C程序直接读取FoxBASE数据库中的数据 470
16.1.1 FoxBASE(dBASE)数据库文件结构 470
16.1.2 对FoxBASE数据库中数据的读取 473
16.1.3 程序例 474
16.1.4 C程序读取数据库中MEMO字段 477
16.1.5 自定义的几个对FoxBASE操作的函数 479
16.2 通过FOXBASE索引文件读取数据 483
16.3 从数据库的.MEM文件中读取数据 489
16.4 C程序间接读取数据库的.DBF文件 492
16.4.1 用COPY TYPE命令将.DBF转换成文本文件 492
16.4.2 C程序间接传送数据给.DBF文件 494
16.5 关于C和FoxBASE的交替使用问题 495
参考文献 499
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019