由于此商品库存有限,请在下单后15分钟之内支付完成,手慢无哦!
100%刮中券,最高50元无敌券,券有效期7天
活动自2017年6月2日上线,敬请关注云钻刮券活动规则更新。
如活动受政府机关指令需要停止举办的,或活动遭受严重网络攻击需暂停举办的,或者系统故障导致的其它意外问题,苏宁无需为此承担赔偿或者进行补偿。
C++程序设计 原理与实践 原书第2版 本贾尼斯特劳斯特鲁普 程序设计原理书 供对程序设计感兴趣的研究人员和工程技术人员
¥ ×1
商品基本信息,请以下列介绍为准 | |
图书名称: | C++程序设计:原理与实践(原书第2版) |
作者: | [美]本贾尼·斯特劳斯特鲁普(Bjarne Stroustrup) 著 张兴 蔡乐 赵林涛 译 |
定价: | 229.00 |
ISBN号: | 9787302666936 |
出版社: | 清华大学出版社 |
内容简介 |
本书内容涵盖了程序设计的基本概念和技术,通过对 C 语言进行全面介绍,帮助读者理解程序
设计的原 理,并掌握实践知识。本书共分为五部分,diyi部分(第 2 ~ 9 章)介绍了程序设计
的基础知识;第二部分(第 10 ~ 16 章)介绍了输入输出相关知识,包括从键盘和文件获取数
值与文本数据的方法,以及以图形化方 式表示数值数据、文本和几何图形;第三部分(第 17 ~21
章)介绍了算法和数据结构相关知识,包括向量容器、 链表和映射容器;第四部分(第 22 ~ 27
章)对 C 语言思想进行了更有广度的介绍;第五部分(附录 A ~附 录 E)是对书中正文的补充。
本书可作为高等院校计算机、电子信息及相关专业的本科生或研究生教材,也可供对程序设计感兴
趣的研 究人员和工程技术人员阅读参考。
编辑引荐
以C 为工具,全面讲解程序设计思想
目录 |
引言 致读者 1
本书结构 2
讲授和学习本书的方法 5
程序设计和计算机科学 8
创造性和问题求解 9
反馈方法 9
作者简介 9
附言 11
第1章 计算、人和程序设计 12
1.1 介绍 13
1.2 软件 13
1.3 人 15
1.4 计算机科学 17
1.5 计算机无处不在 17
1.6 程序员的理想 23
回顾 25
术语 26
练习题 26
附言 27
diyi部分 基 础 29
第2章 Hello, World! 30
2.1 程序 31
2.2 经典的diyi个程序 31
2.3 编译 33
2.4 链接 35
2.5 程序设计环境 36
操作题 36
回顾 38
术语 38
练习题 38
附言 39
第3章 对象、类型和值 40
3.1 输入 41
3.2 变量 42
3.3 输入和类型 43
3.4 运算和运算符 45
3.5 赋值和初始化 47
3.6 复合赋值运算符 50
3.7 命名 52
3.8 类型和对象 53
3.9 类型安全 55
操作题 58
回顾 59
术语 59
练习题 60
附言 61
第4章 计算 62
4.1 计算的定义 63
4.2 目标和工具 64
4.3 表达式 65
4.4 语句 69
4.5 函数 79
4.6 向量容器 82
4.7 语言特性 87
操作题 87
回顾 88
术语 89
习题 89
附言 91
第5章 错误 92
5.1 介绍 93
5.2 错误的来源 94
5.3 编译时错误 95
5.4 链接时错误 97
5.5 运行时错误 97
5.6 异常 101
5.7 逻辑错误 107
5.8 估算 109
5.9 调试 110
5.10 前置条件和后置条件 113
5.11 测试 115
操作题 116
回顾 117
术语 118
练习题 118
附言 119
第6章 编写一个程序 120
6.1 一个问题 121
6.2 对问题的思考 122
6.3 回到计算器问题 124
6.4 语法 130
6.5 将语法转化为程序 135
6.6 尝试diyi个版本 141
6.7 试验第二个版本 145
6.8 单词流 146
6.9 程序结构 150
操作题 151
回顾 151
术语 152
练习题 152
附言 153
第7章 完成一个程序 154
7.1 介绍 155
7.2 输入和输出 155
7.3 错误处理 157
7.4 负数 160
7.5 模运算:% 161
7.6 清理代码 162
7.7 错误恢复 168
7.8 变量 170
操作题 177
回顾 178
术语 178
练习题 178
附言 179
第8章 函数相关的技术细节 180
8.1 技术细节 181
8.2 声明和定义 182
8.3 头文件 186
8.4 作用域 188
8.5 函数调用和返回 192
8.6 求值顺序 205
8.7 命名空间 207
操作题 210
回顾 211
术语 212
练习题 212
附言 213
第9章 类相关的技术细节 214
9.1 用户自定义类型 215
9.2 类和成员 216
9.3 接口和实现 216
9.4 演化一个类 218
9.5 枚举类型 225
9.6 运算符重载 227
9.7 类接口 228
9.8 Date类 236
操作题 240
回顾 240
术语 240
练习题 241
附言 242
第二部分 输入和输出 243
第10章 输入和输出流 244
10.1 输入和输出的简介 245
10.2 I/O流模型 246
10.3 文件 247
10.4 打开文件 248
10.5 读写文件 249
10.6 I/O错误处理 251
10.7 读取单个值 253
10.8 用户自定义输出运算符 258
10.9 用户自定义输入运算符 259
10.10 一个标准的输入循环 259
10.11 读取结构化的文件 261
操作题 267
回顾 267
术语 268
练习题 268
附言 269
第11章 自定义输入与输出 270
11.1 有规律的和无规律的输入和输出 271
11.2 格式化输出 271
11.3 文件打开和定位 276
11.4 字符串流 280
11.5 面向行的输入 281
11.6 字符分类 282
11.7 使用非标准分隔符 284
11.8 还有很多未讨论的内容 289
操作题 290
回顾 290
术语 291
练习题 291
附言 292
第12章 一个显示模型 293
12.1 为什么要使用图形用户界面 294
12.2 一个显示模型:GUI库 295
12.3 diyi个例子 296
12.4 使用GUI库 298
12.5 坐标系 299
12.6 Shape 299
12.7 使用形状类 300
12.8 让图形运行起来 308
操作题 309
回顾 309
术语 310
练习题 310
附言 311
第13章 图形类 312
13.1 图形类概览 313
13.2 Point和Line 315
13.3 Lines 316
13.4 Color 318
13.5 Line_style 320
13.6 Open_polyline 322
13.7 Closed_polyline 323
13.8 Polygon 324
13.9 Rectangle 325
13.10 管理未命名对象 328
13.11 Text 329
13.12 Circle 331
13.13 Ellipse 332
13.14 Marked_polyline 334
13.15 Marks 335
13.16 Mark 336
13.17 Images 337
操作题 340
回顾 340
术语 341
练习题 341
附言 342
第14章 设计图形类 343
14.1 设计原则 344
14.2 Shape类 347
14.3 基类和派生类 355
14.4 面向对象程序设计的好处 360
操作题 361
回顾 362
术语 362
练习题 363
附言 364
第15章 绘制函数图和数据图 365
15.1 介绍 366
15.2 绘制简单函数图 366
15.3 Function类 369
15.4 Axis类 373
15.5 近似 375
15.6 绘制数据图 379
操作题 385
回顾 385
术语 386
练习题 386
附言 387
第16章 图形用户界面 388
16.1 用户界面的选择 389
16.2 Next按钮 389
16.3 一个简单的窗口 390
16.4 Button和其他Widget 395
16.5 一个实例 398
16.6 控制流的反转 400
16.7 添加菜单 401
16.8 调试GUI代码 405
操作题 407
回顾 407
术语 407
练习题 408
附言 408
第三部分 数据结构和算法 409
第17章 向量容器和自由存储区 410
17.1 介绍 411
17.2 vector的基础知识 412
17.3 内存、地址和指针 413
17.4 自由存储区和指针 416
17.5 析构函数 422
17.6 访问元素 425
17.7 指向类对象的指针 426
17.8 类型混合:无类型指针和指针类型转换 427
17.9 指针和引用 428
17.10 this指针 434
操作题 437
回顾 438
术语 438
练习题 438
附言 439
第18章 向量容器和数组 440
18.1 介绍 441
18.2 初始化 442
18.3 拷贝 443
18.4 必要的操作 450
18.5 访问vector的元素 453
18.6 数组 455
18.7 示例:回文 462
操作题 465
回顾 466
术语 467
练习题 467
附言 468
第19章 向量容器、模板和异常 469
19.1 问题 470
19.2 改变向量容器大小 472
19.3 模板 477
19.4 范围检查和异常 487
19.5 资源和异常 490
操作题 497
回顾 498
术语 498
练习题 499
附言 500
第20章 容器和迭代器 501
20.1 存储和处理数据 502
20.2 STL理想设计 505
20.3 序列和迭代器 508
20.4 链表 511
20.5 再次泛化vector 514
20.6 示例:一个简单的文本编辑器 517
20.7 vector、list和string 522
20.8 使我们的vector适配STL 525
20.9 使内置数组适配STL 526
20.10 容器概述 527
操作题 530
回顾 530
术语 531
练习题 531
附言 532
第21章 算法和映射容器(map) 533
21.1 标准库算法 534
21.2 *简单的算法:find( ) 535
21.3 通用查找算法:find_if( ) 537
21.4 函数对象 539
21.5 数值算法 542
21.6 关联容器 547
21.7 拷贝操作 555
21.8 排序和查找 559
21.9 容器算法 561
操作题 562
回顾 562
术语 563
练习题 563
附言 564
第四部分 拓宽眼界 565
第22章 理念与历史 566
22.1 历史、理念和专业水平 567
22.2 程序设计语言历史概览 575
回顾 589
术语 590
练习题 591
附言 592
第23章 文本处理 593
23.1 文本 594
23.2 字符串 594
23.3 I/O流 597
23.4 映射容器 598
23.5 一个问题 604
23.6 正则表达式的思想 605
23.7 使用正则表达式进行查找 607
23.8 正则表达式语法 609
23.9 与正则表达式进行模式匹配 616
操作题 619
回顾 620
术语 620
练习题 621
附言 621
第24章 数值计算 622
24.1 介绍 623
24.2 大小、精度和溢出 623
24.3 数组 626
24.4 C风格的多维数组 627
24.5 Matrix库 628
24.6 示例:求解线性方程组 636
24.7 随机数 640
24.8 标准数学函数 642
24.9 复数 644
操作题 645
回顾 645
术语 646
练习题 646
附言 647
第25章 嵌入式系统程序设计 648
25.1 嵌入式系统 649
25.2 基本概念 651
25.3 内存管理 655
25.4 地址、指针和数组 660
25.5 位、字节和字 668
25.6 编码规范 683
操作题 688
回顾 689
术语 690
练习题 691
附言 692
第26章 测试 693
26.1 我们想要什么 694
26.2 证明 695
26.3 测试相关技术 695
26.4 测试方案设计 709
26.5 调试 709
26.6 性能 710
操作题 712
回顾 713
术语 713
练习题 714
附言 714
第27章 C语言 715
27.1 C和C :兄弟 716
27.2 函数 720
27.3 微小的语言差异 726
27.4 自由存储区 731
27.5 C风格的字符串 733
27.6 输入/输出:stdio 736
27.7 常量和宏 739
27.8 宏 740
27.9 示例:侵入式容器 743
操作题 748
回顾 748
术语 749
练习题 749
附言 750
第五部分 附录 751
附录A 语言摘要 752
A.1 概述 753
A.2 字面值常量 755
A.3 标识符 758
A.4 作用域、存储类别和生命周期 759
A.5 表达式 762
A.6 语句 769
A.7 声明 771
A.8 内置类型 772
A.9 函数 775
A.10 用户自定义类型 777
A.11 枚举 778
A.12 类 778
A.13 模板 788
A.14 异常 791
A.15 命名空间 792
A.16 别名 793
A.17 预处理指令 793
附录B 标准库概要 795
B.1 概述 796
B.2 错误处理 800
B.3 迭代器 801
B.4 容器 804
B.5 算法 811
B.6 STL工具 818
B.7 I/O流 823
B.8 字符串操作 827
B.9 数值 831
B.10 时间 835
B.11 C标准库函数 836
B.12 其他库 842
附录C Visual Studio快速入门 843
C.1 让程序“跑”起来 844
C.2 安装Visual Studio 844
C.3 创建和运行程序 844
C.4 后续学习 846
附录D 安装FLTK 847
D.1 介绍 848
D.2 下载FLTK 848
D.3 安装FLTK 848
D.4 在Visual Studio中使用FLTK 849
D.5 测试是否正常工作 849
附录E GUI实现 851
E.1 回调实现 852
E.2 Widget实现 853
E.3 Window实现 854
E.4 Vector_ref 855
E.5 一个示例:操作Widget 855
术语表 859
作者简介 |
Bjarne Stroustrup(本贾尼?斯特劳斯特卢普)被誉为“C 之父”,1950年出生于丹麦,先后
毕业于丹麦奥胡斯大学和英国剑桥大学,曾担任AT&T大规模程序设计研究部门负责人,
AT&T、贝尔实验室和ACM成员,德州农工大学计算机系首席教授,德州农工大学“杰出教
授”。现任摩根士丹利信息技术部门董事总经理、哥伦比亚大学计算机科学系客座教授,美
国**工程学会会员,IEEE、ACM、CHM资深会员。
张兴,曾就职于腾讯后端研发工作,现从事数据库内核研发工作,3.7W star项目C 那些事作
者,热爱开源项目,是Apache Arrow、DuckDB 贡献者。
蔡乐,B站up主“阿西拜编程”,在军工仿真行业拥有丰富的C 编程经验,同时也是一位计算
机书籍翻译者和C 教学视频创作者。毕业于南昌航空工业学院计算机科学与应用专业。曾于航
空工业集团650所担任设计员,于北京赛四达科技任程序员,作为美国VT MAK亚太地区的**
销售工程师,以及长沙博永研的技术总监,积累了大量宝贵的行业项目经验。在工作之余一直
致力于以教学视频的方式普及计算机科学知识,为推动行业发展不懈努力。
赵林涛,北京理工大学计算机科学与技术工学学士,软件工程硕士,曾供职于国内计算机仿真
相关的公司和互联网公司,从事C/C 的开发工作**过18年,具备大量系统设计开发经验,曾开
设计发过多款游戏软件、工业软件以及互联网应用。
亲,大宗购物请点击企业用户渠道>小苏的服务会更贴心!
亲,很抱歉,您购买的宝贝销售异常火爆让小苏措手不及,请稍后再试~
非常抱歉,您前期未参加预订活动,
无法支付尾款哦!
抱歉,您暂无任性付资格