第一章 文件和目录管理 1
1.1 MS-DOS文件系统 1
1.1.1 路径名 1
1.1.2 作为文件的设备 2
1.1.3 文件属性 2
1.1.4 文件句柄 3
1.2 基本文件的目录管理任务 3
1.2.1 改变驱动器和目录 5
1.2.2 改变文件允许 7
_access 9
_chdir 9
_chdrive 10
_chmod 11
_chsize 12
_filelength 12
_fstat 13
_fullpath 14
_getcwd 15
_getdcwd 16
_getdrive 16
_isatty 17
_locking 18
_makepath 19
_mkdir 19
_mktemp 20
remove 21
rename 21
_rmdir 22
_searchdev 22
_setmode 23
_splitpath 24
_stat 24
_umask 25
_unlink 26
第二章 I/O流 27
2.1 流 27
2.1.1 缓冲型I/O 27
2.1.2 文件类型 28
2.1.3 格式化和非格式化I/O 28
2.1.4 在一个文件中的当前位置 29
2.1.5 预定义流 29
2.1.6 I/O字符串 29
2.2 基本的I/O任务流 30
2.2.1 在一个文件中加入行数 32
2.3 一个简单的通讯录 34
2.4 显示错误信息的方便方法 41
clearerr 44
fclose 44
_fcloseall 45
_fdopen 46
feof4 47
ferror 48
fflush 48
fgetc 49
_fgetchar 50
fgetpos 51
fgets 51
_fileno 52
_flushall 53
fopen 53
fprintf 55
fputc 55
_fputchar 56
fputs 57
fread 57
freopen 58
fscanf 59
fseek 60
fsetpos 60
_fsopen 61
ftell 62
fwrite 63
getc 64
getchar 64
gets 65
_getw 66
perror 66
printf 67
putc 70
putchar 70
puts 71
_putw 71
rewind 72
_rmtmp 73
scanf 73
setbuf 76
setvbuf 76
_snprintf 77
sprintf 78
sscanf 79
_tempnam 80
tmpfile 80
tmpnam 81
ungetc 82
vfprintf 82
vprintf 84
_vsnprintf 84
vsprintf 85
第三章 低级I/O 87
3.1 低级I/O的基础 87
3.1.1 文本和二进制模式 87
3.1.2 操作系统使用的缓存 88
3.1.3 文件句柄 88
3.1.4 文件句柄的最大数目 88
3.2 基本低级I/O任务 89
3.2.1 复制文件 89
3.2.2 使用_dup._dup2重定向stdout 92
3.3 函数介绍 94
close 94
_Commit 95
_creat 95
_dup 96
_dup2 97
_eof 98
_lseek 98
_open 99
_read 101
_sopen 101
_tell 102
_write 103
第四章 控制台和输入/输出口(I/O口) 104
4.1 控制台和输入/输出口(I/O口)基础 104
4.1.1 控制台和I/O任务 104
4.1.2 使用inp和outp函数产生声音 105
_cgets 107
_cprintf 108
_cputs 109
_cscanf 109
_getch 110
_getche 110
_inp 111
_inpw 112
_kbhit 112
_outp 113
_outpw 114
_putch 114
_ungetch 115
第五章 字符和数据转换 116
5.1 字符和数据转换的基础 116
5.1.1 区分字符 116
5.1.2 数据转换 117
5.2 字符和数字转换任务 117
5.2.1 把文本字符串转换成小写 119
5.2.2 简单的计算器 120
atof 121
atoi,atol 122
_atold 123
_ecvt,_fcvt 123
_gcvt 124
isalnum 125
isalpha 125
__isascii 126
iscntrl,isdigit,isgraph,islower,isprint,ispunct,isspace,isapper,isxdigit 126
__iscsym,__iscsymf 128
itoa,ltoa 128
strtod 129
strtol 130
_trtold 131
strtoul 132
__toascii 132
_tolower,tolower 133
_toupper,toupper 134
_ultoa 134
第六章 串和缓冲区处理 136
6.1 C语言中的串和缓冲区 136
6.1.1 声明串和缓冲区 136
6.1.2 辞典式顺序 137
6.1.3 多字节和宽字符串 137
6.1.4 远缓冲区和串 137
6.2 基本的串和缓冲区处理任务 137
6.2.1 拷贝视频存储器 140
6.2.2 语法分析一行文字 142
mblen,_fmblen 144
mbstowcs,_fmbstowcs 145
mbtowc,_fmbtowc 146
_memccpy,_fmemccpy 147
memchr,_fmemchr 147
memcmp,_fmemcmp 148
memcpy,_fmemcpy 149
_mmmicmp,_fmemicmp 150
memmove,_fmemmove 151
memset,_fmemset 152
_movedata 152
strcat,_fstrcat 153
strchr,_fstrchr 154
strcmp,_fstrcmp 155
_strcmpi 155
strcoll 156
strcpy,_fstrcpy 157
strcspn,_fstrcspn 158
_strdup,_fstrdup,_nfstrdup 158
_strerror 159
strerror 160
_stricmp,_fstricmp 161
_strlen,_fstrlen 161
_strlwr,_fstrlwr 162
strncat,_fstrncat 163
strncpy,_fstrncpy 163
_strnicmp,_fstrnicmp 164
_strnset,_fstrnset 165
strpbrk,_fstrpbrk 166
strrchr,_fstrrchr 166
_strrev,_fstrrev 167
_strset,_fstrset 168
strspn,_fstrspn 169
strstr,_fstrstr 169
strtok,_fstrtok 170
_strupr,_fstrupr 171
strxfrm 172
_swab 173
wcstombs,_fwcstombs 173
wctomb,_fwctomb 174
第七章 搜索和排序 175
7.1 搜索和排序任务基础 175
7.1.1 查寻环境变量 175
bsearch 177
_lfind,_lsearch 178
?sort 180
? 181
? 181
8.1.1 Local Time,GMT和UTC 181
8.1.2 时间转换 182
8.2 基本的日期和时间管理任务 182
8.2.1 获取和打印当前日期和时间 183
8.2.2 打印一份月历 184
asctime 189
clock 190
ctime 191
difftime 191
_ftime 192
gmtime,localtime 193
mktime 193
strdate 194
strftimeI 195
_strtime 196
time 197
_tzset 197
_utime 198
第九章 数学函数 200
9.1 浮点数 200
9.1.1 浮点数的存储格式 200
9.1.2 浮点变量的类型 200
9.1.3 浮点型程序包 201
9.1.4 数学函数中的错误 201
9.2 数学函数的类型 202
9.2.1 计算一项贷款的每月偿还钱数 205
9.2.2 计算sines和cosines 206
abs 207
acos,acosl 207
asin,asinl 208
atan,atanl 209
atan2.atan2l 209
Bessel函数 210
_cabs,_cabsl 211
ceil ceill 212
_clear87,_control87 212
cos,cosl 214
cosh,coshl 214
_dieeetomsbin,_dmsbintoieee 215
div 216
exp,expl 216
fabs,fabsl 217
_fieeetomsbin,_fmsbintoieee 217
floor,floorl 218
fmod,fmodl 219
_fpreset 219
frexp,frexpl 220
_hypot,_hypotl 221
labs 221
ldexp,ldexpl 222
ldiv 222
log,log10,log1,log101 223
_lrotl,_lrotr 224
_matherr,_matherrl 224
__max,__min 225
modf,modfl 226
pow,powl 226
rand 227
_rotl,_rotr 228
sin,sinl 228
sinh,sinhl 229
aqrt,aqrtl 230
srand 230
_status87 231
tan,tanl 231
tanh,tanhl 232
第十章 进程控制 233
10.1 管理进程 233
10.1.1 环境 233
10.1.2 信号signals 234
10.1.3 可变长度参数列表 234
10.1.4 场所 234
10.2 基本进程控制任务 234
10.2.1 一个微型外壳 237
10.3 函数介绍 242
abort 242
assert 242
atexit,_fatexit 243
_cexit,_c_exit 244
_execl,_execle,_execlp,_execlpe;_execv,_execve,_execvp,_execvpe 244
exit 246
_exit 246
getenv 247
_getpid 248
localeconv 248
longjmp 249
_onexit _fonexit 250
_putenv 251
raise 252
setjmp 252
setlocale 253
signal 254
_spawnl,_spawnle,_spawnlp,_spawlpe,_spawnv,_spawnve _spawnvp,_spawnvpe 255
system 257
va_arg,va_end,va_start(ANSI版本) 257
va_arg,va_end,va_start(UNIX版本) 259
第十一章 内存管理 261
11.1 内存管理基础 261
11.1.1 分段内存寻址 261
11.1.2 内存模式 261
11.1.3 近指针,远指针,巨指针 262
11.1.4 _near,_far,_huge关键字 262
11.1.5 堆 262
11.1.6 基堆 263
11.1.7 虚拟存储器 264
11.2 基本的内存管理任务 264
11.2.1 分配内存和检测堆 266
_alloca 270
_bfreeseg 271
_bheapseg 271
calloc,_bcalloc,_fcalloc,_healloc,_ncalloc 272
_expand_bexpand,_fexpand,_nexpand 273
free,_bfree,_ffree,_hfree,_nfree 274
_freect 275
_heapadd,_bheapadd 276
_heapchk_bheapchk_fheapchk,_nheapchk 276
_heapmin,_bheapmin,_fheapmim,_nheapmin 277
_heapset,_bheapset,_fheapset,_nheapset 278
_heapwalk_bheapwalk,_fheapwalk,_nheapwalk 279
malloc,_bmalloc,_fmalloc,_nmalloc 280
_memavl 281
_memmax 282
_msize,_bmsize,_fmsize,_nmsize 282
realloc,_brealloc,_frealloc,_nrealloc 283
_stackavail 284
_vfree 285
_vheapinit 285
_vheapterm 286
_vload 287
_vlock 288
_vlockcnt 289
_vmalloc 289
_vmsize 290
_vrealloc 291
_vunlock 292
第十二章 DOS和BIOS功能调用 293
12.1 访问BIOS和DOS服务例程 293
12.1.1 BIOS服务例程 294
12.1.2 MS-DOS功能 294
12.2 基本DOS和BIOS任务 296
12.2.1 目录列表 296
12.2.2 察看磁盘的物理扇区 299
_bdos 303
_bios_disk 304
_bios_equiplist 307
_bios_keybrd 308
_bios_memsize 309
_bios_printer 310
_bios_serialcom 311
_bios_timeofday 313
_chain_intr 314
_disable 314
_dos_allocmem 315
_dos_close 315
_dos_commit 316
_dos_create,dos creamew 317
_dos_findfirst,_dos_findnext 318
_dos_freemem 319
_dos_getdate 320
_dos_getdiskfree 320
_dos_getdrive 322
_dos_getfileattr 322
_dos_getftime 323
_dos_gettime 324
_dos_getvect 325
_dos_keep 326
_dos_open 326
_dos_read 328
_dos_setblock 329
_dos_setdate 330
_dos_setdrive 330
_dos_setfileattr 331
_dos_setftime 332
_dos_settime 333
_dos_setvect 334
_dos_write 335
_dosexterr 336
_enable 337
_FP_OFF,_FP_SEG 337
_hardrerr,_hardresume,_hardretn 338
_int86,_int86x 339
_intdos,_intdosx 341
_segread 343