当前位置:首页 > 工业技术
Borland c++应用篇
Borland c++应用篇

Borland c++应用篇PDF电子书下载

工业技术

  • 电子书积分:25 积分如何计算积分?
  • 作 者:
  • 出 版 社:
  • 出版年份:2222
  • ISBN:
  • 页数:999 页
图书介绍:
《Borland c++应用篇》目录
标签:应用

第一部分 运行Borland C++ 2

第一章 IDE入门 2

1.1 安装Borland C++ 2

1.1.1 对硬件和软件的要求 2

1.1.2 安装步骤 2

目录 2

1.1.3 启动Borland C++ 4

1.1.4 获取帮助信息 5

1.2 配置IDE 5

1.2.1 改变SpeedBars 6

1.2.2 设置IDE preference 6

1.2.3 保存IDE的设置 7

1.3 使用编辑器 7

1.3.1 配置IDE的编辑器 7

1.3.2 语法制导彩色显示(Syntax Highlighting) 8

1.4 使用消息窗口(Message)工作 8

1.5 浏览代码 9

1.5.1 浏览对象的类 10

1.5.2 过滤器 10

1.5.3 查看所列符号的声明 10

1.5.4 浏览全局符号 11

1.5.5 在浏览器中使用一般通配符 12

1.5.6 浏览源代码中的符号 12

1.6 使用命令行工具 12

1.6.1 DPMI和命令行工具 13

1.6.2 内存和MAKESWAP.EXE 13

1.6.3 运行时间管理器和工具 13

1.6.4 控制RTM占用的内存 14

1.7 在IDE中运行其他程序 14

第二章 运行工程管理器 16

2.1 什么是工程管理器 16

2.2 建立一个工程 17

2.2.1 建立一个多任务工程 18

2.2.2 转换旧的工程 19

2.2.3 将工程转化为制作文件(makefiles) 19

2.2.4 改变工程视图 19

2.3 建立一个工程 20

2.3.1 建立工程的一部分 20

2.4 编辑工程树 21

2.4.1 使用TargetExpert编辑任务属性 21

2.4.2 编辑节点属性 21

2.4.3 增加和删除一个节点 22

2.4.4 增加和删除任务 22

2.4.5 移动节点和任务 23

2.4.6 拷贝节点 23

2.5 使用Source Pool 23

2.6.1 Local Override 24

2.6 设置工程选项 24

2.6.2 使用Style Sheet 25

2.6.3 将一个Style Sheet与一个节点相连 25

2.6.4 生成一个Style Sheet 26

2.6.5 编辑Style Sheet 26

2.6.6 共享Style Sheet 26

2.6.7 查看工程中的选项 27

2.7 转换器 27

2.7.1 安装一个转换器 28

2.7.2 使用SpeedMenu中的Special命令 29

2.7.3 安装观察器和工具 29

第三章 编译 30

3.1 在IDE中编译 30

3.1.1 使用IDE编译器选项 30

3.2 使用命令行编译器 31

3.2.1 配置文件 31

3.2.2 应答文件 32

3.2.3 选项的优先级规则 32

3.3 编译选项参考 32

3.4 目录选项 44

3.4.1 查找文件算法 45

3.5 编译器宏定义选项(Compiler|Defines) 45

3.6 编译器代码生成选项(Compiler|Code-generati+on) 46

3.8 编译器输出选项(Compiler|Compiler Output) 47

3.7 编译器浮点处理选项(Compiler|Floating Point) 47

3.9 编译调试选项(Compiler|Debugging) 48

3.8.1 编译源文件代码选项(Compiler|Source) 48

3.11 16位编译处理器选项(16—bit Compiler|Processor) 50

3.10 预编译头文件选项(Compiler|Precompiled headers) 50

3.12 16位编译存储模式选项(16—bit Compiler|Memory Model) 51

3.11.1 16位编译器调用约定选项(16—bit Compiler|Calling Convention) 51

3.13 16位编译数据段命名选项(16—bit Compiler|Segment Names Data) 53

3.14 16位远程数据段命名选项(compiler|Segment Names Far Data) 54

3.15 16位编译代码段命名选项(16—bit Compiler|Segment Names Code) 54

3.15.1 16位编译入口|出口代码选项(16—bit Compiler|Entry/Exity Code) 55

3.16 32位编译处理器选项(32—bit Compiler|Processor) 56

3.18 C++选项|成员指针(C++Options|Member Pointer) 57

3.17 32位编译调用约定选项(32—bit Compiler|Calling Convention) 57

3.19 C++兼容性选项(C++Options|C++Compatibiliry) 58

3.20 C++虚表选项(C++Optinons|Virtual Tables) 59

3.21 C++模板生成选项(C++Options|Templates) 59

3.23 优化声明选项(Optimizations Specific) 60

3.22 C++例外控制选项(C++Options|Exception handling/RTTI) 60

3.22.1 优化选项 60

3.24 优化代码长度选项(Optimization|Size) 62

3.25 优化速度选项(Optimization|Speed) 63

3.28 ANSI违例警告(Message|ANSI Violations) 65

3.27 移植性警告选项(Messages|Portability) 65

3.26 消息选项(Messages) 65

3.30 潜在的C++错误(Messages|Potential C++ Errors) 66

3.29 C++错误(Messages|Obsolete C++) 66

3.32 潜在错误(Messages|Potential errors) 67

3.31 无效C++代码(Messages|Inefficient C++ Coding) 67

3.32.1 无效代码(Messages|Inefficient coding) 68

3.34 Make选项 68

3.35 命令行选项 68

3.33 一般错误(Message|General) 68

4.1 AppExpert基础 72

4.2 使用AppExpert生成一个应用程序 72

第四章 运行AppExpert构造应用程序 72

4.2.1 缺省的AppExpert应用程序 73

4.3 应用程序选项 73

4.3.1 应用程序的基本选项(Application|Basic Optins) 74

4.3.2 应用程序的高级选项(Application|Advanced Options) 74

4.3.3 应用程序的代码生成控制选项(Application|Code Gen Control) 75

4.3.4 应用程序管理选项(Application|Admin Options) 75

4.4 主窗口选项(Main Window Options) 75

4.4.1 主窗口基本选项(Main window|Basic Options) 76

4.4.2 主窗口的SDI用户选项(Main Windows|SDI Client) 76

4.4.3 主窗口MDI用户选项(Main Window|MDI Client) 77

4.5 MDI子窗口显示选项(MDI Child/View Options) 77

4.5.1 MDI子窗口|显示的基础选项(MDI Child/View|Basic Options) 77

5.1.1 Class Expert基础 79

5.1 启动ClassExpert 79

第五章 运行ClassExpert 79

5.1.2 添加一个类 80

5.1.3 创建文档类型 81

5.1.4 添加和删除事件处理程序 82

5.1.5 添加和删除实例变量 82

5.2 使用资源管理程序与ClassExpert 83

5.1.6 跳转到类的源代码 83

5.2.1 IDE中运行Resource Workshop 84

5.3 使用Rescan 84

5.3.1 删除一个类 84

5.3.2 移动一个类 85

5.3.3 更名一个AppEXpert元素 85

5.3.4 引入一个类 85

5.3.5 重建.APX数据库文件 85

6.1.1 编译时间错误 86

6.1 错误的类型 86

第六章 运行集成调试器 86

6.1.2 运行时间错误 87

6.2 生成调试信息 87

6.3 指明程序参数 87

6.4 控制程序执行 87

6.1.3 逻辑错误 87

6.4.1 监视程序的输出(Watching program output) 88

6.4.2 单步执行程序(Step over code) 88

6.4.4 单步跳过一段程序代码 89

6.4.3 跟踪执行代码(Tracing into code) 89

6.4.5 停止程序运行 90

6.4.6 重新开始 90

6.5 检查变量的值 91

6.5.1 什么是表达式 91

6.5.2 监视表达式 91

6.5.3 计算和修改表达式 93

6.5.4 检查数据元素 94

6.5.5 检查寄存器的值 95

6.6.2 使用断点工作 96

6.6.1 设置断点 96

6.6 使用断点 96

6.6.3 用户定做断点和执行点 98

6.9 调试动态连接库 99

6.8 使用Event Log窗口 99

6.7 解决一般保护错误 99

第七章 运行WinSight 101

7.1 开始启动 101

7.1.1 启动和结束屏幕更新 101

7.1.2 关闭消息跟踪 101

7.2 选择视窗 102

7.3 Class List 102

7.3.1 使用Class List视窗 102

7.3.2 监测类 102

7.4 Window Tree 103

7.4.1 寻找窗口 103

7.5.1 使用Message Trace视窗 104

7.5.2 其它的跟踪选项 104

7.4.2 监测窗口 104

7.5 选择跟踪消息 104

第八章 运行WinSpector 109

8.1 使用WinSpector 109

8.1.1 配置WINSPCTR.LOG 109

8.1.2 WINSPCTR.LOG参考 110

8.2 处理WinSpector数据 114

8.2.1 DFA输出 114

8.2.2 使用带有WINSPCTR.LOG的DFA 115

8.2.3 使用带WINSPCTR.BIN的DFA 115

8.3 其它WinSpector工具 115

8.3.2 使用TMAPSYM.EXE 116

8.3.3 使用BUILDSYM.EXE 116

8.3.1 使用EXEMAP.EXE 116

9.1 TLINK基础 118

第九章 运行连接程序:TLINK 118

9.1.2 响应文件 119

9.1.1 TLINK.CFG 119

9.1.4 连接库 120

9.1.3 用BCC.EXE使用TLINK 120

9.2 TLINK选项 121

9.3.1 CODE语句 127

9.3 模块定义文件参考 127

9.3.4 EXETYPE语句 128

9.3.3 DESCRIPTION语句 128

9.3.2 DATA语句 128

9.3.6 IMPORTS语句 129

9.3.5 EXPORT语句 129

9.3.7 LIBRARY语句 130

9.3.8 NAME语句 130

9.3.9 SEGMENTS语句 130

9.3.10 STACKSIZE语句 131

9.3.11 STUB语句 131

9.3.12 缺省的模式定义文件 131

第十章 运行资源工具 133

10.1 BRCC.EXE:资源编译器 133

10.2 RLINK:资源连结器 134

10.3 BRC.EXE资源外壳 135

11.1 使用IMPLIB:导入库 137

第十一章 运行库管理程序 137

11.2.1 在DLL中分类 138

11.2 使用IMPDEF:模块定义文件管理器 138

11.3 使用TLIB:Turbo库 139

11.2.2 在DLL中的函数 139

11.3.1 为什么要使用目标模块库 140

11.3.2 TLIB命令行 140

11.4 例子 142

第十二章 运行MAKE 144

12.1 MAKE基础 144

12.1.1 BUIL TIINS.MAK 145

12.1.2 使用TOUCH.EXE 145

12.1.3 MAKE选项 145

12.2 使用makefile 147

12.3.1 显式规则语法 148

12.2.1 符号目标 148

12.3 显式和隐式规则 148

12.3.2 隐式规则语法 149

12.3.3 命令语法 150

12.4 使用MAKE宏 152

12.4.1 定义宏 152

12.4.2 使用宏 152

12.4.3 在宏中替换字符串 153

12.4.4 缺省的MAKE宏 153

12.4.5 修改缺省宏 154

12.5 使用MAKE指令 154

12.5.1 自动依赖 155

12.5.2 !error 155

12.5.3 !if和其它条件指示字 156

12.5.5 !message 157

12.5.6 .path.ext 157

12.5.4 !include 157

12.5.10 在指示字中使用宏 158

12.5.8 .suffixes 158

12.5.9  !undef 158

12.5.7 .precious 158

12.5.11 空宏 159

13.1 预备知识 162

13.1.1 源文件、目标文件和装载模块 162

第十三章 C语言概述 162

第二部分 Borland C++语言基础 162

13.1.2 程序的逻辑和执行流程 163

13.2 基本数据类型 168

13.2.1 C语言的基本数据类型 169

13.2.2 何处定义数据对象 171

13.3 编写C语言表达式和语句 173

13.3.1 表达式和语句 173

13.4 控制类型转换 177

13.4.1 理解隐式类型转换 177

13.5 显式类型转换的使用 179

13.6 使用C的宏 180

13.6.1 定义类似对象的宏 180

13.6.2 定义类似函数的宏 183

第十四章 操作符和表达式 187

14.1 什么是操作符 187

14.2 单目操作符 187

14.3 双目操作符 188

14.4 三目操作符 189

14.5 标点符号 189

14.6 操作符语义 191

14.6.1 后缀和前缀操作符 191

14.6.2 单目操作符 193

14.6.3 sizeof操作符 194

14.6.4 乘法类操作符 194

14.6.5 加法类操作符 195

14.6.6 按位移位操作符 195

14.6.8 相等类操作符 196

14.6.7 关系操作符 196

14.6.9 位运算操作符 197

14.6.10 逻辑运算符 198

14.6.12 赋值操作符 199

14.6.11 条件操作符?: 199

14.7 高级运算符的使用实例 200

14.7.1 位运算符 200

14.6.13 逗号操作符 200

14.7.2 移位运算符 202

14.7.3 ?:运算符 206

14.7.4 C语言的简写 207

14.7.5 逗号运算符 208

14.7.6 运算符优先级表 208

14.8 表达式 209

第十五章 说明 212

15.1 有关概念 212

15.1.1 对象 212

15.1.2 左值 212

15.1.3 右值 213

15.1.4 类型与存储类 213

15.1.5 作用域 213

15.1.7 生存期 214

15.1.6 可见性 214

15.1.9 连接 215

15.1.8 编译单元 215

15.2 说明的语法 216

15.2.1 暂时定义 216

15.2.2 可能的说明 216

15.3 类型说明 219

15.3.1 外部说明与定义 219

15.3.4 基本类型 220

15.3.3 类型分类 220

15.3.2 类型指明符 220

15.3.5 标准转换 224

15.3.6 特殊的char、int与enum间的转换 224

15.3.7 初始化 224

15.5.2 存储类指明符extern的使用 227

15.4 简单说明 227

15.5 存储类指明符 227

15.5.3 存储类指明符register的使用 227

15.5.1 存储类指明符auto的使用 227

15.6 修饰符 228

15.5.5 存储类指明符typedef的使用 228

15.5.4 存储类指明符static的使用 228

15.6.2 中断函数修饰符 229

15.6.1 const修饰符 229

15.6.3 volatile修饰符 230

15.6.4 cdel与pascal修饰符 230

15.6.5 指针修饰符 231

15.6.6 函数类型修饰符 231

15.7 复杂说明与说明符 232

第十六章 程序控制语句 234

16.1 程序控制语句的语法 234

16.1.1 带标号语句 235

16.1.2 复合语句 235

16.1.3 表达式语句 235

16.1.4 选择语句 236

16.1.5 循环语句 237

16.1.6 跳转语句 238

16.2 if语句 239

16.2.1 else语句的用法 240

16.2.2 if—else—if阶梯的用法 241

16.2.3 条件表达式 242

16.2.4 if语句的嵌套结构 243

16.3 switch语句 243

16.3.1 default语句的用法 245

16.3.2 break语句的用法 246

16.3.3 switch语句的嵌套结构 246

16.4 循环 249

16.5 for循环 249

16.5.1 for循环的灵活用法 250

16.5.2 无穷的for循环 252

16.5.3 无穷for循环的中断 252

16.5.4 空循环的用法 252

16.6 while循环语句 252

16.7 do while循环 254

16.8 循环嵌套 255

16.9 循环中断 257

16.10 continue语句 259

16.11 goto语句 260

17.1.1 说明与定义 262

17.1.2 说明与原型 262

17.1 函数的初步概念 262

第十七章 函数 262

17.1.3 定义 263

17.1.4 形参说明 264

17.1.5 函数调用与参数转换 264

17.2 return语句 265

17.2.1 从一个函数中返回 265

17.2.2 返回值 266

17.2.3 函数返回非整型值 268

17.3 有关函数原型的进一步说明 271

17.3.1 参数不匹配 271

17.3.2 使用头文件 272

17.3.3 无任何参数的函数原型 272

17.3.4 有关旧式C程序 272

17.4 作用域规则 273

17.4.1 局部变量 273

17.4.2 形式参数 275

17.4.3 全局变量 275

17.4.4 有关作用域的最后一个例子 276

17.5 有关函数的参数和自变量的更详尽说明 277

17.5.1 赋值调用和赋地址调用 277

17.5.2 一个赋地址调用的建立 278

17.5.3 数组与函数调用 279

17.6 argc,argv和env——main 中的参数 282

17.7 从main()中返回值 284

17.8 递归 285

17.10 对一些影响函数的效率和实用性问题的讨论 287

17.9 参数说明的传统形式和现代形式的比较 287

17.10.1 参数和通用函数 288

17.10.2 效率 288

17.11 库函数 288

17.12 改变程序的执行流程 291

17.12.1 使用exit()和abort()函数 291

17.12.2 使用system(),exec…(),和spawn()函数 292

17.13 使用可变参数表 293

17.13.2 使用va…()函数 294

17.13.1 设计可变参数表 294

第十八章 指针 299

18.1 指针的语法规则 299

18.1.1 什么是指针 299

18.1.2 指针说明 300

18.1.3 指针与常量 300

18.1.4 指针算术运算 301

18.3 指针变量 302

18.4 指针操作符 302

18.2 指针是地址 302

18.1.5 指针转换 302

18.5 指针表达式 304

18.5.1 指针赋值 304

18.5.2 指针运算 305

18.5.3 指针比较 306

18.6 指针和数组 306

18.6.1 索引指针 307

18.6.2 指针和字符串 307

18.6.3 如何得到一个数组元素的地址 308

18.6.4 指针数组 309

18.6.5 一个使用数组和指针的实例 311

18.7 指针的指针 314

18.8 指针的初始化 315

18.9 指针的一些问题 316

18.9.1 使用C语言的间接操作符和取地址操作符 317

18.9.2 使用数组和串 319

18.10.1 指向函数的指针说明和初始化 325

18.10 使用指向函数的指针 325

18.10.2 利用指针引用某调用函数 326

18.11 在动态内存中使用指针 329

18.11.1 C语言程序和动态内存 330

18.11.2 使用动态存储 331

第十九章 数组、结构、位域、联合和枚举19.1 高级数据类型的语法规则 338

19.1.1 数组 338

19.1.2 结构 338

19.1.3 位域 342

19.1.4 联合 342

19.1.5 枚举 343

19.2.1 一维数组 344

19.2 数组 344

19.2.2 字符串 346

19.2.3 二维数组 351

19.2.4 多维数组 353

19.2.5 数组初始化 353

19.2.6 一个水下搜索游戏 355

19.3 结构 357

19.3.2 结构数组 359

19.3.1 访问结构元素 359

19.3.3 结构赋值 366

19.3.4 将结构传递给函数 367

19.3.5 结构指针 368

19.3.6 结构内部的数组和结构 372

19.4 位域 372

19.5 联合(union) 375

19.6 枚举 379

19.7 使用sizeof来确保可移植性 381

19.8 typedef 382

第二十章 Borland C++预处理程序指令20.1 空指令# 386

20.2 #define与#undef指令 386

20.2.1 简单的#define宏 386

20.2.2 #undef指令 387

20.2.3 —D与—U选择项 388

20.2.4 关键字与保护字 388

20.2.5 带参宏 388

20.3 文件包含指令#include 390

20.3.1 〈头名〉形式的头文件搜索 391

20.3.2 “头名”形式的头文件搜索 391

20.4 条件编译 391

20.4.1 #if、#elif、#else和#endif条件指令 391

20.4.2 defined运算符 392

20.4.3 #ifdef和#ifndef条件指令 392

20.5 #line行控制指令 393

20.7 #pragma指令 394

20.6 #error指令 394

20.7.3 #pragma inline 395

20.7.2 #pragma exit与#pragma startup 395

20.7.1 #pragma argsused 395

20.7.4 #pragma option 396

20.7.5 #pragma saveregs 397

20.7.6 #pragma warn 397

20.8 预定义的宏 398

第三部分 中级Borland C++编程技术第二十一章 文件输入输出21.1 两个预处理指令 402

21.1.1 #define指令 402

21.1.2 #include指令 404

21.2 文件与流 404

21.3 流(streams) 404

21.3.1 文本流 404

21.3.2 二进制流 405

21.3.3 文件 405

21.4 概念和实际 405

21.5 控制台I/O 405

21.5.1 字符读写 406

21.5.2 字符串读写 407

21.6 控制台格式化I/O 407

21.6.1 printf()函数 408

21.6.2 scanf()函数 409

21.7 缓冲型I/O系统(ANSI型I/O系统) 412

21.7.1 文件指针 412

21.7.2 打开文件 412

21.7.3 写字符 414

21.7.4 读字符 414

21.7.5 feof()的使用 415

21.7.6 关闭文件 415

21.7.7 ferror()和rewind()函数 415

21.7.8 fopen(),getc(),putc()和fclose()函数的用法 416

21.7.11 fread()和fwrite()函数 418

21.7.9 getw()和putw()函数的使用 418

21.7.10 fgets()和fputs()函数 418

21.7.12 fseek()函数和随机访问I/O 420

21.7.13 标准流 422

21.7.14 fprintf()和fscan()函数 422

21.7.15 删除文件 425

21.8 非缓冲型I/O——UNIX型文件系统 425

21.8.1 open(),creat()和close()函数 426

21.8.2 read()和write()函数 427

21.8.3 unlink()函数 428

21.8.4 随机访问文件和lseek()函数 429

21.9 理解I/O概念 430

21.9.1 文件与设备 430

21.9.2 文件与流 432

21.9.3 文本流和二进制流 433

21.10 利用标准流进行I/O 434

21.10.1 使用格式化I/O函数 434

21.10.2 scanf()函数 438

21.10.3 prints()函数 441

21.10.4 使用字符I/O函数 443

21.11.1 开文件、关文件和控制文件 447

21.11 使用文件控制函数 447

21.11.2 控制文件缓冲区 450

21.12 使用直接文件I/O函数 451

21.12.1 理解直接I/O概念 452

21.12.2 读写直接文件 453

21.13 使用文件定位函数 458

21.13.1 得到当前文件位置 458

21.13.2 建立一个新文件位置 459

21.14.2 显示和清除文件I/O错误 461

21.14.1 查出文件I/O错误 461

21.14 处理文件I/O错误 461

第二十二章 屏幕文本和图形程序设计 463

22.1 图形系统和要素 463

22.1.1 视频模式 463

22.1.2 窗口和视区 463

22.1.3 在文本模式下编程 464

22.1.4 在图形模式下编程 468

22.2 Borland C++图形程序设计 478

22.2.1 基本正文模式函数 478

22.2.2 Borland C++的图形子系统简介 487

22.3.1 PC显示器适配器和屏幕 495

22.3 IBM/PC的文本方式 495

22.3.2 视频缓冲区I/O 496

22.4.1 使用文本方式控制函数 497

22.4 控制文本屏幕 497

22.4.2 使用直接控制台I/O以获得高性能 499

22.5 使用窗口函数 500

22.6 了解IBM—PC的图形方式 503

22.6.1 象素点与调色板 504

22.6.2 控制图形屏幕 505

22.7 介绍BGI图形库 506

22.7.1 使用画图和填充函数 506

22.7.2 控制屏幕和视口 511

22.8 在图形方式下显示文本 511

22.8.2 使用图形方式下的文本函数 512

22.8.1 BGI字库 512

23.1.1 段、节以及偏移地址(Offset) 515

23.1 80x86的体系结构 515

第二十三章 存储模式 515

23.1.2 CPU的地址寄存器 517

23.2 near指针、far指针和huge指针 518

23.2.1 选择想要的指针大小 518

23.2.2 near、far和huge说明符 520

23.3.1 决定使用哪种存储模式 522

23.3 六个Borland C++存储模式 522

23.3.2 以混合模式编程 523

23.4 创建COM型的可执行程序文件 525

23.4.1 使用COM文件 525

第二十四章 和汇编语言的接口 528

24.1 混合语言程序设计 528

24.1.1 参数传递顺序 528

24.2 建立从Borland C++对.ASM的调用 530

24.2.1 简化的段指令 530

24.2.4 定义全局和外部标识符 531

24.2.2 标准段指令 531

24.2.3 定义数据常量和变量 531

24.3.2 引用数据 533

24.3.1 引用函数 533

24.3 建立从.ASM中对Borland C++的调用 533

24.4.2 处理返回值 534

24.4.1 传递参数 534

24.4 定义汇编语言过程 534

24.6 从.ASM过程中调用C函数 538

24.5 寄存器约定 538

24.7 伪变量、嵌入汇编和中断函数 540

24.7.1 伪变量 540

24.7.2 嵌入汇编语言 542

24.7.3 中断函数 547

24.8.1 直接插入式汇编环境 549

24.8.2 使用asm关键字 549

24.8 使用直接插入(inline)汇编语言 549

24.9 与汇编语言例程的接口 553

24.9.1 在C程序里调用汇编例程 553

24.9.2 在汇编例程中调用C函数 561

24.10 使用中断功能 568

24.10.1 80x86的中断结构 569

24.10.2 使用Borland的中断接口 569

24.11 使用中断处理程序 572

24.11.1 声明中断处理程序函数 573

24.11.2 实现一个时钟中断处理程序 575

第四部分 高级Borland C++程序设计技术第二十五章 通用C语言函数的设计25.1 函数功能描述 580

25.2 通用函数源程序 582

26.1 窗口 588

第二十六章 窗口:丰富的用户界面 588

26.2 视频内存结构 590

26.3 雪花现象与视频回扫 592

27.2 层次式窗口 594

27.1 堆栈式窗口 594

第二十七章 通用窗口库函数 594

27.3 窗口函数 596

27.4.1 源程序:twindow.h 599

27.4 窗口程序清单 599

27.4.2 解析twindow.h 603

27.4.3 程序twindow.c 604

27.4.4 程序解析 618

27.5 窗口范例 620

27.5.1 窗口移动 620

27.5.2 窗口提升(promote)与降级(demote) 622

27.5.3 标题设置及更改窗口颜色 624

27.5.4 堆栈及层次式窗口的比较 625

27.5.5 移动、提升、隐藏、亮度及菜单 626

第二十八章 设计上下文相关的帮助窗口28.1 帮助窗口的程序规划 632

28.2 帮助窗口文本文件 633

28.3 帮助函数 635

28.5 改变帮助函数 636

28.6 取消帮助功能 636

28.4 改变帮助功能键 636

28.7 程序说明 639

28.8 上下文相关帮助窗口之范例 639

第二十九章 在窗口在输入数据口 642

29.1 数据输入的表格画面 642

29.1.1 数据输入字段(field) 642

29.1.2 字段提示符 643

29.3 数据收集的函数 643

29.2 数据输入 643

29.4 源程序 645

29.5 程序说明 654

29.6 范例:定货输入 656

第三十章 设计窗口式文本编辑器 660

30.1.1 光标移动 660

30.1.2 页移动 660

30.1 文本编辑器命令 660

30.1.3 文本段(block)命令 661

30.1.4 编辑命令 661

30.2 文本编辑函数 661

30.3 源程序 661

30.4 程序说明 678

30.5 范例:便笺(NOTEPAD) 680

31.1 菜单 682

第三十一章 设计通用菜单 682

31.2 窗口型菜单的执行步骤 682

31.3 窗口型菜单的处理 683

31.4 程序清单 683

31.5 程序说明:tmenu.c 687

31.6 窗口型菜单的范例 687

第三十二章 Borland C++与内存驻留程序 687

32.1 中断 693

32.1.2 硬件中断 694

32.2 DOS——单任务操作系统 694

32.1.3 软件中断 694

32.1.1 中断矢量 694

32.3 终止并驻留程序 696

32.3.3 驻留的条件 697

32.3.2 内存驻留实用程序 697

32.3.1 中断服务例程 697

32.4.1 驻留的取得 698

32.4 TSR实用程序的创建 698

32.4.2 检查TSR程序是否已驻留 699

32.4.3 中断接管 699

32.4.5 TSR程序的大小 700

32.4.4 中断链接 700

32.4.8 程序段前缀 702

32.4.7 堆栈 702

32.4.6 环境切换 702

32.4.9 PSP的切换 704

32.4.11 键盘中断 706

32.4.10 磁盘传送区(DTA) 706

32.4.12 计时器中断 707

32.4.13 DOS的可重入性 707

32.4.14 DOS的三个堆栈 707

32.4.15 DOS忙标志 708

32.4.16 DOSOK中断 708

32.4.17 驱动器ROM-BIOS中断 708

32.4.18 DOS严重错误中断 709

32.4.19 DOS Ctrl-Break中断 709

32.4.20 执行TSR实用程序 710

32.4.21 删除TSR实用程序的驻留 710

32.4.22 暂停与恢复TSR实用程序 711

第三十三章 用Borland C++设计通用内存驻留程序 711

33.1.1 程序驻留的方式 712

33.1.2 除零中断矢量 712

33.1 TSR范例:时钟程序 712

33.1.6 时间的计算 713

33.1.5 存储及切换堆栈内容 713

33.1.4 串接到旧的计时器 713

33.1.3 执行计时器ISR 713

33.2.1 三个程序模块的运用 716

33.2 TSR程序 716

33.2.3 指定热键 717

33.2.2 TSR的大小 717

33.2.4 TSR标志 718

33.2.5 通讯联络中断矢量 718

33.2.6 驻留的准备工作 719

33.2.7 磁盘ISR 719

33.2.8 严重错误ISR 719

33.2.9 键盘ISR 720

33.2.10 计时器ISR 720

33.2.11 DOSOK ISR 720

33.2.12 执行TSR实用程序 720

33.2.13 删除TSR 720

33.2.14 内存区域与内存控制块 721

33.3 popup.c及resident.c的程序清单 721

33.4 TSR应用程序 730

33.5 TSR程序之测试 731

第五部分 Borland C++4.0 DOS库函数参考附录A 运行库函数abort 734

abs 734

absread 735

abswrite 735

access 736

acos,acosl 737

alloca 737

allocmem,_dos_allocmem 738

arc 740

arg 741

asctime 742

asin,asinl 743

assert 743

atan,atanl 744

atan2,atan2l 745

atexit 745

atof,_atold 746

atoi 747

atol 748

bar 748

bar3d 749

bcd 751

bdos 751

bdosptr 752

bioscom 753

_bios_disk 755

biosdisk 757

biosequip 759

_bios_equiplist 761

bioskey 762

_bios_keybrd 764

biosmemory 765

_bios_memsize 766

biosprint 766

_bios_printer 767

_bios_serialcom 769

biostime 771

_bios_timeofday 772

brk 773

bsearch 773

cabs,cabsl 775

calloc 776

ceil,ceill 777

_c_exit 777

_cexit 778

cgets 779

_chain_intr 780

chdir 782

_chdrive 783

_chmod 783

chmod 785

chsize 786

circle 786

_clear87 787

cleardevice 788

clearerr 789

clearviewport 790

clock 791

_close,close 792

closedir 793

closegraph 793

clreol 794

clrscr 795

complex 795

_control87 796

conj 796

coreleft 797

cos,cosl 798

cosh,coshl 798

country 799

cprintf 800

cputs 801

_creat,_dos_creat 801

creat 803

creatnew 804

creattemp 805

cscanf 806

ctime 807

ctrlbrk 807

delay 808

delline 809

detectgraph 809

disable,_disable,enable,_enable 812

difftime 812

div 814

_dos_close 814

_dos_commit 815

_dos_creat 815

_dos_creatnew 816

dosexterr 817

_dos_findfirst 818

_dos_findnext 820

_dos_getdiskfree 820

_dos_getdrive,_dos_setdrive 821

_dos_getfileattr,_dos_setfileattr 822

_dos_getftime,_dos_setftime 824

_dos_gettime,_dos_settime 825

_dos_getvect 826

_dos_setvect 827

_dos_write 828

dostounix 829

drawpoly 830

dup 832

dup2 833

ecvt 834

ellipse 835

_ _emit_ _ 836

eof 837

execl,execle,execlp,execlpe,execv,execve,execvp,execvpe 838

_exit 842

exit 842

exp,expl 843

fabs,fabsl 844

farcalloc 844

farcoreleft 845

farfree 845

farheapcheck 846

farheapcheckfree 847

farheapchecknode 848

farheapfillfree 850

farheapwalk 851

farmalloc 852

farrealloc 853

fcloseall 854

fclose 854

fcvt 855

fdopen 856

feof 857

ferror 858

fflush 858

fgetc 859

fgetchar 860

fgetpos 861

fgets 861

filelength 862

fileno 863

fillellipse 864

fillpoly 864

findfirst 866

findnext 867

floodfill 868

floor,floorl 870

flushall 870

fmod,fmodl 871

_fmemset 871

_fmemcpy 871

_fmemicmp 871

_fmemchr 871

_fmemccpy 871

_fmemcmp 871

fnmerge 872

fnsplit 873

fopen 874

FP_OFF,FP_SEG 876

_fpreset 877

fprintf 878

fputc 879

fputchar 880

fputs 880

free 881

fread 881

freemem,_dos_freemem 882

freopen 883

frexp,frexpl 884

fscanf 885

fseek 886

fsetpos 887

_fsopen 888

fstat,stat 890

_fstr* 891

ftell 891

ftime 892

_fullpath 893

fwrite 894

gcvt 895

geninterrupt 895

getarccoords 896

getaspectratio 898

getbkcolor 899

getc 900

getcbrk 901

getch 902

getchar 902

getcolor 903

getche 903

getcwd 905

getcurdir 905

getdate,_dos_getdate,_dos_setdate, 906

setdate 906

_getdcwd 907

getdefaultpalette 908

getdfree 909

getdisk,setdisk 910

_getdrive 911

getdrivename 911

getdta 912

getfat 913

getenv 913

getfatd 915

getfillpattern 915

getfillsettings 917

getftime,setftime 919

getgraphmode 920

getimage 921

getlinesettings 923

getmaxcolor 925

getmaxmode 926

getmaxx 927

getmaxy 928

getmodename 930

getmoderange 931

getpalette 932

getpalettesize 934

getpass 935

getpid 935

getpixel 936

getpsp 937

gets 938

gettext 938

gettextinfo 939

gettextsettings 940

gettime,settime 942

getvect,setvect 943

getverify 944

getviewsettings 945

getw 946

getx 947

gmtime(GMT) 949

gotoxy 950

graphdefaults 951

grapherrormsg 952

_graphfreemem 953

_graphgetmem 954

graphresult 956

harderr,hardresume,hardretn 957

_harderr 961

_hardresume 963

_hardretn 964

heapcheck 964

heapcheckfree 965

heapchecknode 966

heapfillfree 968

heapwalk 969

_heapmin 969

highvideo 970

hypot,hypotl 970

imag 971

imagesize 972

initgraph 973

inp 976

inport 977

inportb 977

inpw 978

insline 978

installuserdriver 979

installuserfont 981

int86 982

int86x 983

intdos 984

intdosx 985

intr 986

ioctl 987

isalnum 989

isalpha 989

isascii 990

isatty 990

iscntrl 991

isdigit 991

isgraph 992

islower 993

isprint 993

ispunct 994

isspace 994

isupper 995

isxdigit 995

itoa 996

kbhit 996

keep,_dos_keep 997

labs 1000

ldexp,ldexpl 1001

ldiv 1001

lfind 1002

line 1003

linerel 1004

lineto 1005

localeconv 1006

localtime 1008

lock 1009

locking 1010

log,logl 1012

log10,log101 1012

longjmp 1013

lowvideo 1014

_lrotl 1015

_lrotr 1016

lsearch 1016

lseek 1018

_makepath 1019

ltoa 1019

malloc 1020

matherr,_matherrl 1021

max 1023

mblen 1024

mbstowcs 1024

mbtowc 1025

memccpy,_fmemccpy 1025

memchr,_fmemchr 1026

memcmp,_fmemcmp 1026

memcpy,_fmemcpy 1027

memicmp,_fmemicmp 1028

memmove 1029

memset,_fmemset 1029

mkdir 1030

min 1030

MK_FP 1031

mktemp 1032

mktime 1032

modf,modfl 1033

movedata 1034

movmem 1035

moverel 1035

movetext 1036

moveto 1037

norm 1038

normvideo 1039

nosound 1039

offsetof 1040

_open,_dos_open 1040

open 1042

opendir 1044

outp 1045

outport,outportb 1045

outpw 1046

outtext 1047

outtextxy 1048

_OvrInitEms 1049

_OvrInitExt 1050

parsfnm 1050

peek 1051

peekb 1052

perror 1053

pieslice 1055

poke 1056

pokeb 1057

polar 1057

poly,polyl 1058

pow,powl 1059

pow10,pow101 1060

printf 1060

putc 1066

putch 1066

putchar 1067

putenv 1068

putimage 1068

putpixel 1071

puts 1072

puttext 1073

putw 1074

qsort 1075

raise 1076

rand 1077

randbrd 1077

randbwr 1079

random 1080

randomize 1081

_read,_dos_read 1082

read 1084

readdir 1085

real 1085

realloc 1086

rectangle 1087

registerbgidriver 1088

registerbgifont 1089

remove 1091

rename 1091

restorecrtmode 1092

rewind 1093

rewinddir 1094

rmdir 1094

rmtmp 1095

_rotl 1096

_rotr 1097

_rtl_chmod 1098

_rtl_close 1099

_creat 1100

_rtl_open 1101

_rtl_read 1103

_rtl_write 1104

sbrk 1105

scanf 1105

_searchenv 1112

searchpath 1113

_searchstr 1113

sector 1114

segread 1115

setactivepage 1116

setallpalette 1117

setaspectratio 1119

setbkcolor 1121

setblock,_dos_setblock 1122

setbuf 1123

setcbrk 1124

setcolor 1125

_setcursortype 1127

setdta 1127

setfillpattern 1129

setfillstyle 1130

setgraphbufsize 1132

setgraphmode 1133

setjmp 1135

setlinestyle 1136

setlocale 1138

setmode 1141

setmem 1141

set_new_handler 1142

setpalette 1143

setrgbpalatte 1145

settextjustify 1146

settextstyle 1148

setusercharsize 1150

setvbuf 1151

setviewport 1153

setverify 1153

setvisualpage 1155

setwritemode 1156

signal 1157

sin,sinl 1160

sinh,sinhl 1161

sopen 1162

sleep 1162

spawnv,spavnve,spawnvp,spawnvpe… 1164

spawl,spawnle,spawnlp,spawnlpe, 1164

sound 1164

_splitpath 1167

sprintf 1168

srand 1169

sqrt,sqrtl 1169

sscanf 1170

stackavail 1172

stime 1172

_status87 1172

stpcpy 1173

strchr,_fstrchr 1174

strcat,_fstrcat 1174

strcmp 1175

strcmpi 1176

strcpy 1177

strcoll 1177

strcspn,_fstrcspn 1178

_strdate 1178

strdup,_fstrdup 1179

_strerror 1179

strerror 1180

strftime 1181

stricmp,_fstricmp 1182

strlwr,_fstrlwr 1183

strlen,_fstrlen 1183

strncat,_fstrncat 1184

strncmp,_fstrncmp 1184

strncmpi 1185

strncpy,_fstrncpy 1186

strnicmp,_fstrnicmp 1186

strnset,_fstrnset 1187

strrchr,_fstrrchr 1188

strpbrk,_fstrpbrk 1188

strrev,_fstrrev 1189

strset,_fstrset 1189

strspn,_fstrspn 1190

strstr,_fstrstr 1190

_strtime 1191

strtod,_strtold 1191

strtok,_fstrtok 1192

strtol 1193

strtoul 1194

strxfrm 1195

strupr,_fstrupr 1195

swab 1196

system 1197

tan,tanl 1197

tanh,tanhl 1198

tell 1199

tempnam 1199

textattr 1200

textbackground 1202

textcolor 1203

textheight 1204

textmode 1205

textwidth 1206

time 1207

tmpfile 1208

tmpnam 1209

toascii 1209

_tolower 1210

tolower 1210

_toupper 1211

toupper 1212

tzset 1212

ultoa 1213

umask 1214

ungetc 1215

ungetch 1216

unixtodos 1216

unlink 1217

unlock 1218

utime 1219

va_arg,va_end,va_start 1220

vfprintf 1221

vfscanf 1222

vprintf 1224

vscanf 1224

vsprintf 1226

vsscanf 1226

wait 1227

wctomb 1228

wcstombs 1228

wherex 1229

wherey 1229

window 1230

_write 1230

write 1231

_argc 1234

_ctype 1234

_argv 1234

_8087 1234

附录B DOS全局变量 1234

_daylight 1235

_directvideo 1235

_environ 1235

errno、_doserrno、_sys_errlist、_sys_nerr 1236

_floatconvert 1238

_fmode 1238

_new_handler 1238

_heaplen 1239

_osmajor、_osminor 1239

_psp 1240

_threadid 1240

_ovrbuffer 1240

_stklen 1241

_timezone 1241

_version 1242

_wscroll 1242

_tzname 1242

gety 9489

返回顶部