C Primer Plus第6版中文版第六版 c Primer第6版中文版 c语言程序设计现代方法教程 c语言primer第六版 编程书籍 c primer plus6.
- 产品名称:CPrimerPlus第6版
- 是否是套装:否
- 书名:CPrimerPlus第6版
- 定价:89.00元
- 出版社名称:人民邮电出版社
- 出版时间:2016年4月
- 作者:StephenPrata
- 作者地区:美国
- 开本:16开
- 书名:CPrimerPlus第6版
|
|
|
温馨提示:亲亲,本书为正版图书,本书的源代码和课后题答案可以登录http://picimg.witcp.com/pic/www.epubit.com.cn/book/details/1848下载。本书赠送的学习资料,是通过云盘的形式发送给亲们哒~收到书后请客服索要即可,亲们可以放心购买的哦。
书 名:C Primer Plus(第6版)中文版
作 者:[美]Stephen Prata
出版社:人民邮电出版社
出版日期:(咨询特价)
I S B N(咨询特价)
页 码:
字数:1214千
版 次:第1版
装 帧:平装
开 本:16
原 价:89.(咨询特价)
编辑推荐
经久不衰的C语言畅销经典教程
针对C11标准进行全面更新
《C Primer Plus(第6版)中文版》是一本经过仔细测试、精心设计的完整C语言教程,它涵盖了C语言编程中的核心内容。《C Primer Plus(第6版)中文版》作为计算机科学的经典著作,讲解了包含结构化代码和自顶向下设计在内的程序设计原则。
与以前的版本一样,作者的目标仍旧是为读者提供一本入门型、条理清晰、见解深刻的C语言教程。作者把基础的编程概念与C语言的细节很好地融合在一起,并通过大量短小精悍的示例同时演示一两个概念,通过学以致用的方式鼓励读者掌握新的主题。
每章末尾的复习题和编程练习题进一步强化了最重要的信息,有助于读者理解和消化那些难以理解的概念。本书采用了友好、易于使用的编排方尸不仅适合打算认真学习C语言编程的学生阅读,也适合那些精通其他编程语言,但希望更好地掌握C语言这门核心语言的开发人员阅读。
《C Primer Plus(第6版)中文版》在之前版本的基础之上进行了全新升级,它涵盖了C语言最新的进展以及C11标准的详细内容。本书还提供了大量深度与广度齐备的教学技术和工具,来提高你的学习。
图书目录第1章 初识C语言 1
1.1 C语言的起源 1
1.2 选择C语言的理由 1
1.2.1 设计特性 1
1.2.2 高效性 1
1.2.3 可移植性 2
1.2.4 强大而灵活 2
1.2.5 面向程序员 2
1.2.6 缺点 3
1.3 C语言的应用范围 3
1.4 计算机能做什么 4
1.5 高级计算机语言和编译器 4
1.6 语言标准 5
1.6.1 第1个ANSI/ISO C标准 5
1.6.2 C99标准 6
1.6.3 C11标准 6
1.7 使用C语言的几个步骤 6
1.7.1 第1埠定义程序的目标 7
1.7.2 第2埠设计程序 7
1.7.3 第3埠编写代码 7
1.7.4 第4埠编译 7
1.7.5 第5埠运行程序 8
1.7.6 第6埠测试和调试程序 8
1.7.7 第7埠维护和修改代码 8
1.7.8 说明 8
1.8 编程机制 8
1.8.1 目标代码文件、可执行文件和库 9
1.8.2 Unix系统 10
1.8.3 GNU编译器集合和LLVM项目 11
1.8.4 Linux系统 11
1.8.5 PC的命令行编译器 12
1.8.6 集成开发环境(Windows) 12
1.8.7 Windows/Linux 13
1.8.8 Macintosh中的C 13
1.9 本书的组织结构 14
(咨询特价) 本书的约定 14
(咨询特价).1 字体 14
(咨询特价).2 程序输出 14
(咨询特价).3 特殊素 15
(咨询特价) 本章小结 15
(咨询特价) 复习题 16
(咨询特价) 编程练习 16
第2章 C语言概述 17
2.1 简单的C程序示例 17
2.2 示例解释 18
2.2.1 第1遍:快速概要 19
2.2.2 第2遍:程序细节 19
2.3 简单程序的结构 25
2.4 提高程序可读性的技巧 26
2.5 进一步使用C 26
2.5.1 程序说明 27
2.5.2 多条声明 27
2.5.3 乘法 27
2.5.4 打印多个值 27
2.6 多个函数 27
2.7 调试程序 29
2.7.1 语法错误 29
2.7.2 语义错误 29
2.7.3 程序状态 31
2.8 关键字和保留标识符 31
2.9 关键概念 31
(咨询特价) 本章小结 32
(咨询特价) 复习题 32
(咨询特价) 编程练习 33
第3章 数据和C 35
3.1 示例程序 35
3.2 变量与常量数据 37
3.3 数据:数据类型关键字 37
3.3.1 整数和浮点数 38
3.3.2 整数 38
3.3.3 浮点数 39
3.4 C语言基本数据类型 39
3.4.1 int类型 39
3.4.2 其他整数类型 42
3.4.3 使用字符:char类型 45
3.4.4 _Bool类型 49
3.4.5 可移植类型:stdint.h和inttypes.h 49
3.4.6 float、double和long double 50
3.4.7 复数和虚数类型 54
3.4.8 其他类型 54
3.4.9 类型大小 56
3.5 使用数据类型 57
3.6 参数和陷阱 57
3.7 转义序列示例 58
3.7.1 程序运行情况 58
3.7.2 刷新输出 59
3.8 关键概念 59
3.9 本章小结 60
(咨询特价) 复习题 60
(咨询特价) 编程练习 62
第4章 字符串和格式化输入/输出 63
4.1 前导程序 63
4.2 字符串简介 64
4.2.1 char类型数组和null字符 64
4.2.2 使用字符串 65
4.2.3 strlen()函数 66
4.3 常量和C预处理器 67
4.3.1 const限定符 69
4.3.2 明示常量 69
4.4 printf()和scanf() 71
4.4.1 printf()函数 71
4.4.2 使用printf() 72
4.4.3 printf()的转换说明修饰符 73
4.4.4 转换说明的意义 77
4.4.5 使用scanf() 82
4.4.6 printf()和scanf()的*修饰符 85
4.4.7 printf()的用法提示 86
4.5 关键概念 87
4.6 本章小结 87
4.7 复习题 88
4.8 编程练习 89
第5章 运算符、表达式和语句 91
5.1 循环简介 91
5.2 基本运算符 93
5.2.1 赋值运算符:= 93
5.2.2 加法运算符:+ 95
5.2.3 减法运算符:- 95
5.2.4 符号运算符:-和+ 95
5.2.5 乘法运算符:* 95
5.2.6 除法运算符:/ 97
5.2.7 运算符优先级 97
5.2.8 优先级和求值顺序 98
5.3 其他运算符 99
5.3.1 sizeof运算符和size_t类型 100
5.3.2 求模运算符:% 100
5.3.3 递增运算符:++ 101
5.3.4 递减运算符:-- 104
5.3.5 优先级 105
5.3.6 不要自作聪明 105
5.4 表达式和语句 106
5.4.1 表达式 106
5.4.2 语句 107
5.4.3 复合语句(块) 109
5.5 类型转换 110
5.6 带参数的函数 113
5.7 示例程序 115
5.8 关键概念 116
5.9 本章小结 116
(咨询特价) 复习题 117
(咨询特价) 编程练习 119
第6章 C控制语句:循环 121
6.1 再探while循环 121
6.1.1 程序注释 122
6.1.2 C风格读取循环 123
6.2 while语句 123
6.2.1 终止while循环 124
6.2.2 何时终止循环 124
6.2.3 while:入口条件循环 125
6.2.4 语法要点 125
6.3 用关系运算符和表达式比较大小 126
6.3.1 什么是真 127
6.3.2 其他真值 128
6.3.3 真值的问题 129
6.3.4 新的_Bool类型 130
6.3.5 优先级和关系运算符 131
6.4 不确定循环和计数循环 132
6.5 for循环 133
6.6 其他赋值运算符:+=、-=、*=、/=、%= 137
6.7 逗号运算符 138
6.8 出口条件循环:do while 141
6.9 如何选择循环 143
(咨询特价) 嵌套循环 143
(咨询特价).1 程序分析 144
(咨询特价).2 嵌套变式 144
(咨询特价) 数组简介 145
(咨询特价) 使用函数返回值的循环示例 147
(咨询特价).1 程序分析 148
(咨询特价).2 使用带返回值的函数 149
(咨询特价) 关键概念 149
(咨询特价) 本章小结 150
(咨询特价) 复习题 151
(咨询特价) 编程练习 154
第7章 C控制语句:分支和跳转 157
7.1 if语句 157
7.2 if else语句 159
7.2.1 另一个示例:介绍getchar()和putchar() 160
7.2.2 ctype.h系列的字符函数 161
7.2.3 多重选择else if 163
7.2.4 else与if配对 164
7.2.5 多层嵌套的if语句 165
7.3 逻辑运算符 168
7.3.1 备选拼写:iso646.h头文件 169
7.3.2 优先级 170
7.3.3 求值顺序 170
7.3.4 范围 171
7.4 一个统计单词的程序 172
7.5 条件运算符:@: 174
7.6 循环辅助:continue和break 176
7.6.1 continue语句 176
7.6.2 break语句 178
7.7 多重选择:switch和break 179
7.7.1 switch语句 180
7.7.2 只读每行的首字符 181
7.7.3 多重标签 182
7.7.4 switch和if else 183
7.8 goto语句 184
7.9 关键概念 186
(咨询特价) 本章小结 187
(咨询特价) 复习题 187
(咨询特价) 编程练习 189
第8章 字符输入/输出和输入验证 191
8.1 单字符I/O:getchar()和putchar() 191
8.2 缓冲区 192
8.3 结束键盘输入 193
8.3.1 文件、流和键盘输入 193
8.3.2 文件结尾 194
8.4 重定向和文件 196
8.5 创建更友好的用户界面 199
8.5.1 使用缓冲输入 199
8.5.2 混合数值和字符输入 201
8.6 输入验证 203
8.6.1 分析程序 206
8.6.2 输入流和数字 207
8.7 菜单浏览 207
8.7.1 任务 207
8.7.2 使执行更顺利 208
8.7.3 混合字符和数值输入 209
8.8 关键概念 212
8.9 本章小结 212
(咨询特价) 复习题 212
(咨询特价) 编程练习 213
第9章 函 数 215
9.1 复习函数 215
9.1.1 创建并使用简单函数 216
9.1.2 分析程序 217
9.1.3 函数参数 218
9.1.4 定义带形式参数的函数 219
9.1.5 声明带形式参数函数的原型 220
9.1.6 调用带实际参数的函数 220
9.1.7 黑盒视角 221
9.1.8 使用return从函数中返回值 221
9.1.9 函数类型 223
9.2 ANSI C函数原型 224
9.2.1 问题所在 224
9.2.2 ANSI的解决方案 225
9.2.3 无参数和未指定参数 226
9.2.4 函数原型的优点 227
9.3 递归 227
9.3.1 演示递归 227
9.3.2 递归的基本原理 228
9.3.3 尾递归 229
9.3.4 递归和倒序计算 230
9.3.5 递归的优缺点 232
9.4 编译多源代码文件的程序 232
9.4.1 Unix 233
9.4.2 Linux 233
9.4.3 DOS命令行编译器 233
9.4.4 Windows和苹果的IDE编译器 233
9.4.5 使用头文件 233
9.5 查找地址:&运算符 236
9.6 更改主调函数中的变量 237
9.7 指针简介 239
9.7.1 间接运算符:* 239
9.7.2 声明指针 240
9.7.3 使用指针在函数间通信 240
9.8 关键概念 244
9.9 本章小结 244
(咨询特价) 复习题 244
(咨询特价) 编程练习 245
第10章 数组和指针 247
10.1 数组 247
10.1.1 初始化数组 247
10.1.2 指定初始化器(C99) 250
10.1.3 给数组素赋值 251
10.1.4 数组边界 252
10.1.5 指定数组的大小 253
10.2 多维数组 254
10.2.1 初始化二维数组 256
10.2.2 其他多维数组 256
10.3 指针和数组 257
10.4 函数、数组和指针 259
10.4.1 使用指针形参 261
10.4.2 指针表示法和数组表示法 262
10.5 指针操作 263
10.6 保护数组中的数据 266
10.6.1 对形式参数使用const 266
10.6.2 const的其他内容 268
10.7 指针和多维数组 269
10.7.1 指向多维数组的指针 271
10.7.2 指针的兼容性 272
10.7.3 函数和多维数组 273
10.8 变长数组(VLA) 276
10.9 复合字面量 279
(咨询特价) 关键概念 280
(咨询特价) 本章小结 281
(咨询特价) 复习题 282
(咨询特价) 编程练习 283
第11章 字符串和字符串函数 285
11.1 表示字符串和字符串I/O 285
11.1.1 在程序中定义字符串 286
11.1.2 指针和字符串 291
11.2 字符串输入 292
11.2.1 分配空间 292
11.2.2 不幸的gets()函数 293
11.2.3 gets()的替代品 294
11.2.4 scanf()函数 299
11.3 字符串输出 300
11.3.1 puts()函数 300
11.3.2 fputs()函数 301
11.3.3 printf()函数 301
11.4 自定义输入/输出函数 302
11.5 字符串函数 304
11.5.1 strlen()函数 304
11.5.2 strcat()函数 305
11.5.3 strncat()函数 306
11.5.4 strcmp()函数 307
11.5.5 strcpy()和strncpy()函数 312
11.5.6 sprintf()函数 315
11.5.7 其他字符串函数 316
11.6 字符串示例:字符串排序 318
11.6.1 排序指针而非字符串 319
11.6.2 选择排序算法 320
11.7 ctype.h字符函数和字符串 321
11.8 命令行参数 322
11.8.1 集成环境中的命令行参数 323
11.8.2 Macintosh中的命令行参数 323
11.9 把字符串转换为数字 324
(咨询特价) 关键概念 326
(咨询特价) 本章小结 326
(咨询特价) 复习题 327
(咨询特价) 编程练习 329
第12章 存储类别、链接和内存管理 331
12.1 存储类别 331
12.1.1 作用域 332
12.1.2 链接 333
12.1.3 存储期 334
12.1.4 自动变量 335
12.1.5 寄存器变量 338
12.1.6 块作用域的静态变量 338
12.1.7 外部链接的静态变量 339
12.1.8 内部链接的静态变量 343
12.1.9 多文件 343
12.1.10 存储类别说明符 343
12.1.11 存储类别和函数 346
12.1.12 存储类别的选择 346
12.2 随机数函数和静态变量 346
12.3 掷骰子 349
12.4 分配内存:malloc()和free() 352
12.4.1 free()的重要性 354
12.4.2 calloc()函数 355
12.4.3 动态内存分配和变长数组 355
12.4.4 存储类别和动态内存分配 356
12.5 ANSI C类型限定符 357
12.5.1 const类型限定符 358
12.5.2 volatile类型限定符 359
12.5.3 restrict类型限定符 360
12.5.4 _Atomic类型限定符(C11) 361
12.5.5 旧关键字的新位置 361
12.6 关键概念 362
12.7 本章小结 362
12.8 复习题 363
12.9 编程练习 364
第13章 文件输入/输出 367
13.1 与文件进行通信 367
13.1.1 文件是什么 367
13.1.2 文本模式和二进制模式 367
13.1.3 I/O的级别 369
13.1.4 标准文件 369
13.2 标准I/O 369
13.2.1 检查命令行参数 370
13.2.2 fopen()函数 370
13.2.3 getc()和putc()函数 371
13.2.4 文件结尾 372
13.2.5 fclose()函数 372
13.2.6 指向标准文件的指针 373
13.3 一个简单的文件压缩程序 373
13.4 文件I/O:fprintf()、fscanf()、fgets()和fputs() 374
13.4.1 fprintf()和fscanf()函数 374
13.4.2 fgets()和fputs()函数 376
13.5 随机访问:fseek()和ftell() 376
13.5.1 fseek()和ftell()的工作原理 377
13.5.2 二进制模式和文本模式 378
13.5.3 可移植性 378
13.5.4 fgetpos()和fsetpos()函数 379
13.6 标准I/O的机理 379
13.7 其他标准I/O函数 380
13.7.1 int ungetc(int c, FILE *fp)函数 380
13.7.2 int fflush()函数 380
13.7.3 int setvbuf()函数 380
13.2.4 二进制I/O:fread()和fwrite() 381
13.7.5 size_t fwrite()函数 382
13.7.6 size_t fread()函数 382
13.7.7 int feof(FILE *fp) 和 int ferror(FILE *fp)函数 382
13.7.8 一个程序示例 382
13.7.9 用二进制I/O进行随机访问 385
13.8 关键概念 386
13.9 本章小结 387
(咨询特价) 复习题 387
(咨询特价) 编程练习 388
第14章 结构和其他数据形式 391
14.1 示例问题:创建图书目录 391
14.2 建立结构声明 392
14.3 定义结构变量 393
14.3.1 初始化结构 394
14.3.2 访问结构成员 394
14.3.3 结构的初始化器 395
14.4 结构数组 395
14.4.1 声明结构数组 397
14.4.2 标识结构数组的成员 398
14.4.3 程序讨论 398
14.5 嵌套结构 399
14.6 指向结构的指针 400
14.6.1 声明和初始化结构指针 401
14.6.2 用指针访问成员 401
14.7 向函数传递结构的信息 402
14.7.1 传递结构成员 402
14.7.2 传递结构的地址 403
14.7.3 传递结构 404
14.7.4 其他结构特性 404
14.7.5 结构和结构指针的选择 407
14.7.6 结构中的字符数组和字符指针 408
14.7.7 结构、指针和malloc() 409
14.7.8 复合字面量和结构(C99) 411
14.7.9 伸缩型数组成员(C99) 412
14.7.10 匿名结构(C11) 414
14.7.11 使用结构数组的函数 414
14.8 把结构内容保存到文件中 416
14.8.1 保存结构的程序示例 416
14.8.2 程序要点 419
14.9 链式结构 419
(咨询特价) 联合简介 420
(咨询特价).1 使用联合 420
(咨询特价).2 匿名联合(C11) 421
(咨询特价) 枚举类型 422
(咨询特价).1 enum常量 423
(咨询特价).2 默认值 423
(咨询特价).3 赋值 423
(咨询特价).4 enum的用法 423
(咨询特价).5 共享名称空间 425
(咨询特价) typedef简介 425
(咨询特价) 其他复杂的声明 427
(咨询特价) 函数和指针 428
(咨询特价) 关键概念 433
(咨询特价) 本章小结 434
(咨询特价) 复习题 434
(咨询特价) 编程练习 436
第15章 位 操 作 439
15.1 二进制数、位和字节 439
15.1.1 二进制整数 440
15.1.2 有符号整数 440
15.1.3 二进制浮点数 440
15.2 其他进制数 441
15.2.1 八进制 441
15.2.2 十六进制 441
15.3 C按位运算符 442
15.3.1 按位逻辑运算符 442
15.3.2 用法:掩码 443
15.3.3 用法:打开位(设置位) 444
15.3.4 用法:关闭位(清空位) 444
13.5.5 用法:切换位 445
15.3.6 用法:检查位的值 445
15.3.7 移位运算符 445
15.3.8 编程示例 446
15.3.9 另一个例子 448
15.4 位字段 450
15.4.1 位字段示例 451
15.4.2 位字段和按位运算符 453
15.5 对齐特性(C11) 458
15.6 关键概念 460
15.7 本章小结 460
15.8 复习题 460
15.9 编程练习 461
第16章 C预处理器和C库 463
16.1 翻译程序的第一步 463
16.2 明示常量:#define 464
16.2.1 记号 466
16.2.2 重定义常量 467
16.3 在#define中使用参数 467
16.3.1 用宏参数创建字符串:#运算符 469
16.3.2 预处理器粘合剂:##运算符 470
16.3.3 变参宏:...和_ _VA_ARGS_ _ 470
16.4 宏和函数的选择 471
16.5 文件包含:#include 472
16.5.1 头文件示例 472
16.5.2 使用头文件 474
16.6 其他指令 475
16.6.1 #undef指令 475
16.6.2 从C预处理器角度看已定义 475
16.6.3 条件编译 475
16.6.4 预定义宏 479
16.6.5 #line和#error 480
16.6.6 #pragma 480
16.6.7 泛型选择(C11) 481
16.7 内联函数(C99) 482
16.8 _Noreturn函数(C11) 484
16.9 C库 484
16.9.1 访问C库 484
16.9.2 使用库描述 485
(咨询特价) 数学库 486
(咨询特价).1 三角问题 486
(咨询特价).2 类型变体 488
(咨询特价).3 tgmath.h库(C99) 489
(咨询特价) 通用工具库 489
(咨询特价).1 exit()和atexit()函数 490
(咨询特价).2 qsort()函数 491
(咨询特价) 断言库 495
(咨询特价).1 assert的用法 495
(咨询特价).2 _Static_assert(C11) 496
(咨询特价) string.h库中的memcpy()和memmove() 496
(咨询特价) 可变参数:stdarg.h 498
(咨询特价) 关键概念 500
(咨询特价) 本章小结 500
(咨询特价) 复习题 500
(咨询特价) 编程练习 501
第17章 高级数据表示 503
17.1 研究数据表示 503
17.2 从数组到链表 505
17.2.1 使用链表 508
17.2.2 反思 511
17.3 抽象数据类型(ADT) 511
17.3.1 建立抽象 512
17.3.2 建立接口 513
17.3.3 使用接口 516
17.3.4 实现接口 518
17.4 队列ADT 523
17.4.1 定义队列抽象数据类型 523
17.4.2 定义一个接口 524
17.4.3 实现接口数据表示 524
17.4.4 测试队列 531
17.5 用队列进行模拟 532
17.6 链表和数组 536
17.7 二叉查找树 539
17.7.1 二叉树ADT 540
17.7.2 二叉查找树接口 540
17.7.3 二叉树的实现 542
17.7.4 使用二叉树 553
17.7.5 树的思想 556
17.8 其他说明 557
17.9 关键概念 558
(咨询特价) 本章小结 558
(咨询特价) 复习题 558
(咨询特价) 编程练习 558
附录A 复习题答案 561
A.1 第1章复习题答案 561
A.2 第2章复习题答案 561
A.3 第3章复习题答案 562
A.4 第4章复习题答案 564
A.5 第5章复习题答案 565
A.6 第6章复习题答案 567
A.7 第7章复习题答案 570
A.8 第8章复习题答案 572
A.9 第9章复习题答案 573
A.10 第10章复习题答案 574
A.11 第11章复习题答案 576
A.12 第12章复习题答案 579
A.13 第13章复习题答案 579
A.14 第14章复习题答案 581
A.15 第15章复习题答案 584
A.16 第16章复习题答案 584
A.17 第17章复习题答案 586
附录B 参考资料 589
B.1 参考资料I:补充阅读 589
B.1.1 在线资源 589
B.1.2 C语言书籍 590
B.1.3 编程书籍 590
B.1.4 参考书籍 590
B.1.5 C++书籍 591
B.2 参考资料II:C运算符 591
B.2.1 算术运算符 591
B.2.2 关系运算符 592
B.2.3 赋值运算符 592
B.2.4 逻辑运算符 592
B.2.5 条件运算符 593
B.2.6 与指针有关的运算符 593
B.2.7 符号运算符 593
B.2.8 结构和联合运算符 594
B.2.9 按位运算符 594
B.2.10 混合运算符 595
B.3 参考资料III:基本类型和存储类别 595
B.3.1 总结:基本数据类型 595
B.3.2 总结:如何声明一个简单变量 596
B.3.3 总结:限定符 597
B.4 参考资料IV:表达式、语句和程序流 598
B.4.1 总结:表达式和语句 598
B.4.2 总结:while语句 599
B.4.3 总结:for语句 599
B.4.4 总结:do while语句 599
B.4.5 总结:if语句 600
B.4.6 带多重选择的switch语句 600
B.4.7 总结:程序跳转 601
B.5 参考资料V:新增C99和C11的ANSI C库 602
B.5.1 断言:assert.h 602
B.5.2 复数:complex.h(C99) 602
B.5.3 字符处理:ctype.h 604
B.5.4 错误报告:errno.h 604
B.5.5 浮点环境:fenv.h(C99) 604
B.5.6 浮点特性:float.h 606
B.5.7 整数类型的格式转换:inttypes.h 607
B.5.8 可选拼写:iso646.h 607
B.5.9 本地化:locale.h 608
B.5.10 数学库:math.h 609
B.5.11 非本地跳转:setjmp.h 612
B.5.12 信号处理:signal.h 612
B.5.13 对齐:stdalign.h(C11) 613
B.5.14 可变参数:stdarg.h 613
B.5.15 原子支持:stdatomic.h(C11) 614
B.5.16 布尔支持:stdbool.h(C99) 614
B.5.17 通用定义:stddef.h 614
B.5.18 整数类型:stdint.h 615
B.5.19 标准I/O库:stdio.h 617
B.5.20 通用工具:stdlib.h 619
B.5.21 _Noreturn:stdnoreturn.h 622
B.5.22 处理字符串:string.h 622
B.5.23 通用类型数学:tgmath.h(C99) 624
B.5.24 线程:threads.h(C11) 625
B.5.25 日期和时间:time.h 625
B.5.26 统一码工具:uchar.h(C11) 627
B.5.27 扩展的多字节字符和宽字符工具:wchar.h(C99) 628
B.5.28 宽字符分类和映射工具:wctype.h(C99) 631
B.6 参考资料VI:扩展的整数类型 632
B.6.1 精确宽度类型 633
B.6.2 最小宽度类型 633
B.6.3 最快最小宽度类型 634
B.6.4 最大宽度类型 634
B.6.5 可储存指针值的整型 634
B.6.6 扩展的整型常量 634
B.7 参考资料VII:扩展字符支持 635
B.7.1 三字符序列 635
B.7.2 双字符 635
B.7.3 可选拼写:iso646.h 636
B.2.4 多字节字符 636
B.7.5 通用字符名(UCN) 636
B.7.6 宽字符 637
B.7.7 宽字符和多字节字符 638
B.8 参考资料VIII:C99/C11数值计算增强 639
B.8.1 IEC浮点标准 639
B.8.2 fenv.h头文件 641
B.8.3 STDC FP_CONTRACT编译指示 641
B.8.4 math.h库增补 642
B.8.5 对复数的支持 642
B.9 参考资料IX:C和C++的区别 644
B.9.1 函数原型 644
B.9.2 char常量 645
B.9.3 const限定符 645
B.9.4 结构和联合 646
B.9.5 枚举 646
B.9.6 指向void的指针 647
B.9.7 布尔类型 647
B.9.8 可选拼写 647
B.9.9 宽字符支持 647
B.9.10 复数类型 647
B.9.11 内联函数 647
B.9.12 C++11中没有的C99/C11特性 648
内容简介
《C Primer Plus(第6版)中文版》详细讲解了C语言的基本概念和编程技巧。
《C Primer Plus(第6版)中文版》共17章。第1、2章介绍了C语言编程的预备知识。第3~15章详细讲解了C语言的相关知识,包括数据类型、格式化输入/输出、运算符、表达式、语句、循环、字符输入和输出、函数、数组和指针、字符和字符串函数、内存管理、文件输入输出、结构、位操作等。第16章、17章介绍C预处理器、C库和高级数据表示。本书以完整的程序为例,讲解C语言的知识要点和注意事项。每章末设计了大量复习题和编程练习,帮助读者巩固所学知识和提高实际编程能力。附录给出了各章复习题的参考答案和丰富的参考资料。
《C Primer Plus(第6版)中文版》可作为C语言的教材,适用于需要系统学习C语言的初学者,也适用于巩固C语言知识或希望进一步提高编程技术的程序员。