当前位置:首页 > 工业技术
C语言及其高级编程技术
C语言及其高级编程技术

C语言及其高级编程技术PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:于春凡编著
  • 出 版 社:天津:南开大学出版社
  • 出版年份:1995
  • ISBN:7310008065
  • 页数:389 页
图书介绍:
《C语言及其高级编程技术》目录

1.1 C语言的发展历史及特点 1

1.1.1 C语言的发展历史 1

1 绪论 1

1.1.2 C语言的特点 2

1.2 IBM—PC微型机所用的C语言 3

1.3 C语言程序的结构及书写格式 3

1.3.1 C语言程序的结构 3

1.3.2 C语言程序的书写格式 4

1.4 C语言程序的开发过程 5

1.4.1 编辑源程序 5

1.4.4 运行程序 6

1.4.2 编译源文件 6

1.4.3 连接目标文件及库文件 6

2 数据及运算 7

2.1 标识符命名 7

2.1.1 标识符的构成规则 7

2.1.2 注意事项 7

2.2 基本数据类型 8

2.2.1 C语言的数据类型 8

2.2.2 基本类型数据的宽度及范围 8

2.2.3 基本类型修饰符 9

2.3.1 数值常量 10

2.3 常量 10

2.3.2 字符常量 12

2.3.3 转义字符常量 12

2.3.4 字符串常量 13

2.3.5 符号常量 14

2.4 变量说明及变量定义 15

2.4.1 变量定义语句 15

2.4.2 局部变量 16

2.4.3 全部变量 17

2.5 变量的存储类型及其寿命与可见性 19

2.5.1 变量的存储类型 19

2.5.2 变量的寿命与可见性 20

2.6 变量的初始化 21

2.7 数组 23

2.7.1 一维数组说明及初始化 23

2.7.2 字符型数组与字符串 24

2.7.3 多维数组 25

2.7.4 字符串数组 26

2.8 运算符 27

2.8.1 算术运算符 27

2.8.2 关系运算符及逻辑运算符 28

2.8.3 字位运算符 29

2.8.4 赋值运算符 30

2.8.5 其它运算符 32

2.8.6 运算符的优先级 33

2.9.1 表达式中的类型转换 34

2.9.2 赋值运算表达式中的类型转换 34

2.9 表达式 34

2.9.3 强制类型转换符 35

2.9.4 使用空格和括号增加可读性 35

2.10 常用I/O函数 36

2.10.1 字符I/O函数 36

2.10.2 字符串I/O函数 37

2.10.3 格式化I/O函数 38

3 语句 41

3.1 复合语句及分程序 41

3.2.1 条件语句的一般形式 42

3.2 条件语句 42

3.2.2 嵌套的条件语句 43

3.2.3 else if结构的嵌套条件语句 44

3.2.4 用运算符?:替代条件语句 45

3.3 循环语句 45

3.3.1 while语句 46

3.3.2 for语句 48

3.3.3 do—while语句 52

3.3.4 循环语句小结 56

3.4 break语句 57

3.5 continue语句 60

3.6 switch语句 63

3.7 goto语句及标号 68

3.8 return语句及exit()函数 69

3.8.1 return语句 69

3.8.2 终止退出函数exit() 69

3.9 空语句 70

4 指针 73

4.1 指针运算符&及* 73

4.1.1 指针运算符& 73

4.2 指针的说明及初始化 74

4.2.1 指针的说明 74

4.1.3 &与*互为逆运算 74

4.1.2 指针运算符* 74

4.2.2 指针的初始化 75

4.2.3 指针的特殊值 76

4.3 指针运算表达式 76

4.3.1 指针的算术运算表达式 77

4.3.2 指针的关系运算表达式 77

4.3.3 指针的赋值运算表达式 77

4.3.4 指针运算表达式的应用举例 78

4.4 指针与数组 79

4.4.1 两种方法访问数组 79

4.4.2 指针与数组表现形式的互换性 80

4.5.1 使用字符型指针处理字符串 83

4.5.2 用字符串常量初始化字符型指针 83

4.5 字符型指针与字符串 83

4.5.3 不要使用无指向的指针 84

4.6 指针数组 86

4.6.1 指针数组的说明 86

4.6.2 指针数组的初始化 86

4.6.3 指针数组与多维数组 87

4.6.4 指针数组与多个字符串 88

4.7 指针的指针 90

5 函数 92

5.1 C语言函数的基本概念 92

5.2.1 函数定义的一般格式 93

5.2 函数定义 93

5.2.2 从函数中返回 94

5.3 函数说明及函数调用 96

5.3.1 函数说明 96

5.3.2 函数调用 96

5.4 函数参数的传送方式 97

5.4.1 参数的传值传送方式 97

5.4.2 参数的传址传送方式 98

5.5 函数返值的传送 100

5.5.1 使用reture语句传送返值 100

5.5.2 使用传址参数传送返值 101

5.6.1 向函数传送一维数组 102

5.6 数组参数的传送 102

5.6.2 向函数传送多维数组 103

5.7 字符串参数的传送 105

5.7.1 向函数传送一个字符串 105

5.7.2 向函数传送多个字符串 106

5.8 指针型函数 108

5.8.1 指针型函数定义 108

5.8.2 返值为全局变量地址 108

5.8.3 返值为static型的内部变量地址 109

5.8.4 返值为调用函数内局部变量地址 110

5.9 函数指针 111

5.9.1 函数指针的定义 111

5.9.2 向函数传送函数参数 113

5.9.3 函数指针数组 114

5.10 嵌套调用及递归调用 116

5.10.1 嵌套调用 116

5.10.2 递归调用 117

5.11 命令行参数 123

5.11.1 命令行的一般格式 123

5.11.2 C程序接收命令行参数 123

5.12 分割编译及文件间的通讯 125

5.12.1 多个源程序文件分割编译 125

5.12.2 源程序文件间的通讯 125

5.13 编译预处理命令 127

5.13.1 #define命令 127

5.13.2 #include命令 128

5.13.3 条件编译命令 129

5.13.4 其它编译预处理命令 131

6 结构 133

6.1 结构定义及结构变量 133

6.1.1 结构定义 133

6.1.2 结构变量说明 134

6.1.3 结构变量成员的访问 135

6.1.4 结构变量的初始化 135

6.2 结构数组 137

6.2.1 结构数组说明及初始化 137

6.2.2 结构数组的应用 138

6.3.2 结构指针目标成员的访问 142

6.3 结构指针 142

6.3.1 结构指针的说明及初始化 142

6.4 结构及结构成员在函数间的传递 145

6.4.1 向函数传递结构成员 145

6.4.2 向函数传递完整结构 146

6.5 结构型及结构指针型函数 148

6.5.1 结构型函数 148

6.5.2 结构指针型函数 149

6.6 结构成员数组及结构 151

6.6.1 结构成员数组 151

6.6.2 结构成员结构 153

7.1.2 设备文件及标准设备文件 156

7.1.1 磁盘文件 156

7 I/O函数与文件 156

7.1 C语言文件的概念 156

7.1.3 文件I/O系统 157

7.1.4 文件控制结构 157

7.1.5 文件型指针 157

7.2 fopen()及fclose()函数 158

7.2.1 打开文件函数fopen() 158

7.2.2 关闭文件函数fclose() 160

7.3 putc()及getc()函数 160

7.3.1 文件的字符输出函数putc() 160

7.3.2 文件的字符输入函数getc() 161

7.4.1 测试文件结束函数feof() 165

7.4 feof()、ferror()、rewind()及clearerr()函数 165

7.4.2 ferror()、clearerr()及rewind()函数 166

7.5 fgets()及fputs()函数 168

7.5.1 文件的字符串输入函数fgets() 168

7.5.2 文件的字符串输出函数fputs() 170

7.6 fread()及fwrite()函数 171

7.6.1 读数据块函数fread() 171

7.6.2 写数据块函数fwrite() 172

7.6.3 读写结构类型数据 173

7.7 fprintf()及fscanf()函数 176

7.8.1 置文件位置指针函数fseek() 177

7.8 fseek()函数与文件的随机访问 177

7.7.1 文件的格式化输出函数fprint() 177

7.7.2 文件的格式化输入函数fscanf() 177

7.8.2 文件的随机访问 178

7.9 设备文件的I/O 179

7.9.1 设备文件的I/O处理 179

7.9.2 标准设备文件的I/O处理 180

7.9.3 控制台I/O函数 180

7.9.4 标准设备文件的重定向 183

7.9.5 标准设备文件的管道功能 185

7.10 非缓冲文件I/O系统 185

7.10.1 文件标识号 185

7.10.2 文件的建立、打开和关闭 185

7.10.3 文件的读写 187

8 动态存储分配函数与动态数据结构 189

8.1 动态存储管理系统及其函数 189

8.1.1 C语言的动态存储管理系统 189

8.1.2 malloc()及free()函数 190

8.2 链表数据结构 192

8.2.1 链表的概念 192

8.2.2 栈式链表的建立及遍历 192

8.2.3 队列链表的建立及遍历 195

8.3 链表的插入及删除 198

8.3.1 插入一个新元素 198

8.3.2 处理有序链表 200

8.3.3 建立有序链表 201

8.3.4 删除一个元素 203

8.4 双向链表 205

8.4.1 双向链表的建立 205

8.4.2 双向链表的插入及删除 206

8.5 二叉树 209

8.5.1 二叉树的概念 210

8.5.2 建立二叉排序树 211

8.5.3 遍历二叉树 212

8.5.4 二叉树的查找及删除 215

8.6 动态数据结构程序实例 217

8.6.1 文本编辑器 217

8.6.2 统计单词出现频度 224

9 屏幕、图形函数与统计简图 229

9.1 屏幕控制函数 229

9.1.1 选屏幕方式函数 229

9.1.2 屏幕选色函数 230

9.1.3 清屏幕函数 232

9.1.4 光标定位函数 233

9.2 基本图形函数 234

9.2.1 画点函数 234

9.2.2 画线函数 235

9.2.3 画方框及填充方框函数 235

9.3 统计简图程序设计 237

9.2.4 画圆函数 237

9.3.1 样条图 238

9.3.2 分布图 240

9.3.3 预测 241

10 字位运算、位域及联合 246

10.1 字位运算 246

10.1.1 字位与、字位或及字位异或 246

10.1.2 移位运算 248

10.1.3 反码运算 249

10.1.4 位操作赋值运算 250

10.2.1 位域结构的定义及变量说明 254

10.2 位域 254

10.2.2 位域结构成员的访问 257

10.3 联合 257

10.3.1 联合的定义及变量说明 257

10.3.2 联合成员的访问 259

10.3.3 联合在函数间的传递 261

10.4 类型定义 262

11 C语言与DOS的接口技术 264

11.1 CPU的寄存器及DOS功能调用 264

11.1.1 CPU的寄存器 264

11.1.2 中断与PC—DOS 265

11.1.3 DOS功能调用 266

11.2 C语言与DOS的接口函数 270

11.2.1 dos.h首标文件 271

11.2.2 bdos()函数 272

11.2.3 intdos()函数 272

11.3 DOS系统资源的利用 272

11.3.1 检查键盘状态 273

11.3.2 打印机的使用 273

11.3.3 直接从键盘读取字符 274

11.3.4 串行口的读写 274

11.3.5 目录列表 274

11.3.6 直接读时间 275

11.3.7 综合程序实例 276

12.1 ROM——BIOS 278

12 C语言与ROM——BIOS的接口技术 278

12.2 C语言与ROM—BIOS的接口函数 281

12.3 ROM—BIOS系统资源的利用 281

12.3.1 清除屏幕 281

12.3.2 光标定位 282

12.3.3 获取键盘扫描代码 284

13 C语言与图形软件开发技术 286

13.1 设置屏幕方式及调色板 286

13.1.1 设置屏幕方式 286

13.1.2 设置显示色调 287

13.2.1 调用ROM—BIOS画点 288

13.2 画点 288

13.1.3 设置背景色 288

13.2.2 直接画点 289

13.2.3 画点函数的使用实例 291

13.3 画线 292

13.3.1 采用比率画线 292

13.3.2 采用Bresenham算法画线 294

13.3.3 画线函数的使用实例 295

13.4 画矩形及矩形填充 296

13.4.1 画矩形 296

13.4.2 矩形填充 296

13.4.3 画矩形函数的使用实例 296

13.5.2 绘图程序实例 297

13.5 绘制任意图形 297

13.5.1 十字定位光标 297

14 C语言与其它高级语言的接口技术 302

14.1 语言间等效的程序调用及语言约定 302

14.1.1 语言间等效的程序调用 302

14.1.2 命名约定 303

14.1.3 调用约定 305

14.1.4 参数传递约定 306

14.2 混合语言程序的开发 307

14.2.1 混合语言程序的开发过程 307

14.2.2 选择适当的存储模式进行编译 307

14.2.3 与语言库的连接方法 308

14.3 C语言与其它语言的接口 309

14.3.1 建立接口的步骤 310

14.3.2 使用fortran或pascal关键字 310

14.3.3 C可采用其它语言的约定 311

14.4 C对BASIC的调用 311

14.4.1 C调用BASIC子程序 312

14.4.2 C调用BASIC函数 313

14.5 C对FORTRAN的调用 314

14.5.1 C调用FORTRAN子例程 314

14.5.2 C调用FORTRAN函数 315

14.6 C对Pascal的调用 316

14.6.1 C调用Pascal过程 317

14.6.2 C调用Pascal函数 318

14.7 Turbo C与Turbo Pascal的接口技术 319

14.7.1 Turbo C与Turbo Pascal的接口 319

14.7.2 Turbo C调用Turbo Pascal过程 323

14.7.3 Turbo C调用Turbo Pascal函数 324

14.7.4 Turbo C与Turbo Pascal程序连接步骤 325

14.7.5 Turbo C与Turbo Pascal相互调用综合例 325

15 C语言与汇编语言的接口技术 329

15.1 开发过程 329

15.2 C语言的调用方法及命名约定 330

15.2.3 C语言的命名约定 331

15.2.1 外部函数说明 331

15.2.2 调用外部汇编过程的方法 331

15.3 C语言的参数传递及返值约定 332

15.3.1 参数传递 332

15.3.2 传送返回地址 332

15.3.3 C语言的返值约定 332

15.4 外部汇编过程的编程方法 333

15.4.1 标准的汇编接口编程方法 333

15.4.2 嵌入C接口文件编程方法 342

15.5 外部变量的使用 344

15.5.1 汇编子程序使用C程序的变量 344

15.5.2 C程序使用汇编子程序的变量 346

15.6 C调用外部汇编过程程序实例 347

15.7 内嵌式汇编过程 353

15.7.1 内嵌式汇编过程的建立 353

15.7.2 内嵌式汇编过程对数据的访问 356

附录A Turbo C程序在集成环境中的开发 359

A.1 Turbo C集成开发环境 359

A.1.1 基本导航操作 359

A.1.2 Turbo C的“热键” 360

A.1.3 菜单中的命令、开关及命名约定 360

A.1.5 快速参考行 361

A.1.6 编辑窗口 361

A.1.4 主菜单 361

A.1.7 信息窗口 364

A.2 菜单命令 364

A.2.1 文件菜单 364

A.2.2 编辑命令 365

A.2.3 运行命令 365

A.2.4 编译菜单 365

A.2.5 工程菜单 366

A.2.6 选择项菜单 366

A.2.7 调试菜单 371

A.3.2 建立单个源文件的可执行程序 372

A.3.1 在集成开发环境中编译及连接Turbo C程序 372

A.3 Turbo C程序的编译及运行 372

A.3.3 在集成开发环境中调试Turbo C程序 374

A.3.4 使用多个源文件 375

A.3.5 Make的其它一些特性 379

A.3.6 MAKE实用程序 379

A.4 Turbo C程序的开发过程 380

A.4.1 建立第一个Turbo C程序 380

A.4.2 修改第一个Turbo C程序 381

A.4.3 建立第二个Turbo C程序 382

附录B C语言关键字 383

附录C 各种版本C编译系统标准函数比较 384

主要参考书目 389

相关图书
作者其它书籍
返回顶部