Menu
Your Cart

Эффективная отладка C/C ++ 9787302 ** 9717

Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Эффективная отладка C/C ++ 9787302 ** 9717
Please log in to view detailed product descriptions and select product options.
US$31.51
  • Aktie: 100
  • Modell: 10148084585801
  • Gewicht: 1.00kg
  • Abmessungen: 25.00cm x 10.00cm x 1.50cm

高效C/C++调试

 作  者 : [美]严琦,卢宪廷

 出  版  社 : 清华大学出版社

 ISBN 号 : 9787302649717

 出版日期 : 2024年1月

 版  次 : 1

 印刷日期 : 2024年1月

 印  次 : 1

 装  帧 : 平装

 开  本 : 16开

《高效C/C++调试》是关于软件调试技术的深度探索,融合了作者的实践智慧。书中不仅指导读者如何使用专业的调试工具,还介绍了如何宏观和微观地分析问题,并*大限度地发挥调试器功能。此外,书中还深入解读了调试背后的技术原理,如调试符号、内存管理及系统内核对内存的操作机制,以揭示内存管理的关键性和复杂性。

除了介绍基础概念外,本书还涵盖了许多增强调试能力的工具与插件。尽管焦点集中在C/C++,但其中的策略与技巧具有普适性,适用于多种编程语境。内容包括从内存泄漏预防调试、Linux下的eBPF和strace调试方法,到Kubernetes容器调试,再到C++20的协程与崩溃信息收集策略。

《高效C/C++调试》主要面向具有C/C++编程基础的读者,同时也非常适合对软件技术原理有深入探索兴趣的读者以及追求高效调试技巧的开发人员。

严琦 毕业于中国科技大学和美国伦斯勒理工学院。 毕业后近三十年里曾先后任职于五家软件技术公司从事技算机编程工作,从初级程序员成长为一个中等规模的软件公司的首席架构师,涉及包括嵌入式系统,有限元分析,计算机辅助设计,商业智能系统等领域,致力于微处理器,编译器,服务器,系统内核等技术。作者有多项开源项目在实际应用中受到公司内外的肯定和感谢,在工作中申请并获批一项软件专利,并有另一项专利在审批中。

卢宪廷 本科毕业于天津大学,研究生东南大学。目前在微策略软件担任高级软件工程师,负责设计和开发优化企业全域搜索引擎;专注于高稳定/事件驱动异步架构/C++/Rust编程。

  • **章 *nbsp;*nbsp;调试符号和调试器 1
  • 1.1 *nbsp;调试符号 1
  • 1.1.1 *nbsp;调试符号概览 2
  • 1.1.2 *nbsp;DWARF格式 3
  • 1.2 *nbsp;实战故事1:数据类型的不一致 14
  • 1.3 *nbsp;调试器的内部结构 16
  • 1.3.1 *nbsp;用户界面 16
  • 1.3.2 *nbsp;符号管理模块 16
  • 1.3.3 *nbsp;目标管理模块 17
  • 1.4 *nbsp;技巧和注意事项 21
  • 1.4.1 *nbsp;特殊的调试符号 21
  • 1.4.2 *nbsp;改变执行及其副作用 24
  • 1.4.3 *nbsp;符号匹配的自动化 25
  • 1.4.4 *nbsp;后期分析 26
  • 1.4.5 *nbsp;内存保护 27
  • 1.4.6 *nbsp;断点不工作 27
  • 1.5 *nbsp;本章小结 28
  • 第2章 *nbsp;*nbsp;堆数据结构 29
  • 2.1 *nbsp;理解内存管理器 30
  • 2.1.1 *nbsp;p*****oc 31
  • 2.1.2 *nbsp;TCMalloc 34
  • 2.1.3 *nbsp;多个堆 38
  • 2.2 *nbsp;利用堆元数据 39
  • 2.3 *nbsp;本章小结 42
  • 第3章 *nbsp;*nbsp;内存损坏 43
  • 3.1 *nbsp;内存是怎么损坏的 44
  • 3.1.1 *nbsp;内存溢出与下溢 44
  • 3.1.2 *nbsp;访问释放的内存 45
  • 3.1.3 *nbsp;使用未初始化的值 46
  • 3.2 *nbsp;调试内存损坏 47
  • 3.2.1 *nbsp;初始调查 49
  • 3.2.2 *nbsp;内存调试工具 53
  • 3.2.3 *nbsp;堆与栈内存损坏对比 53
  • 3.2.4 *nbsp;工具箱 54
  • 3.3 *nbsp;实战故事2:神秘的字节序转换 55
  • 3.3.1 *nbsp;症状 55
  • 3.3.2 *nbsp;分析和调试 56
  • 3.3.3 *nbsp;错误和有价值的点 **
  • 3.4 *nbsp;实战故事3:覆写栈变量 65
  • 3.4.1 *nbsp;症状 65
  • 3.4.2 *nbsp;分析和调试 65
  • 3.5 *nbsp;本章小结 68
  • 第4章 *nbsp;*nbsp;C++对象布局 69
  • 4.1 *nbsp;对齐和大小端 69
  • 4.1.1 *nbsp;对齐 69
  • 4.1.2 *nbsp;大小端 70
  • 4.2 *nbsp;C++对象布局 71
  • 4.3 *nbsp;实战故事4:访问已经释放的数据 94
  • 4.3.1 *nbsp;症状 94
  • 4.3.2 *nbsp;分析和调试 94
  • 4.4 *nbsp;搜索引用树 95
  • 4.5 *nbsp;本章小结 101
  • 第5章 *nbsp;*nbsp;优化后的二进制 102
  • 5.1 *nbsp;调试版和发行版的区别 102
  • 5.2 *nbsp;调试优化代码的挑战 106
  • 5.3 *nbsp;汇编代码介绍 108
  • 5.3.1 *nbsp;寄存器 109
  • 5.3.2 *nbsp;指令集 111
  • 5.3.3 *nbsp;程序汇编的结构 113
  • 5.3.4 *nbsp;函数调用习惯 116
  • 5.4 *nbsp;分析优化后的代码 127
  • 5.5 *nbsp;调试优化后的代码示例 130
  • 5.6 *nbsp;本章小结 141
  • 第6章 *nbsp;*nbsp;进程镜像 142
  • 6.1 *nbsp;二进制文件格式 144
  • 6.2 *nbsp;运行期加载和链接 148
  • 6.3 *nbsp;进程映射表 153
  • 6.3.1 *nbsp;可执行文件 154
  • 6.3.2 *nbsp;共享库 156
  • 6.3.3 *nbsp;线程栈 157
  • 6.3.4 *nbsp;无名区域 157
  • 6.3.5 *nbsp;** 158
  • 6.3.6 *nbsp;链接时替换 158
  • 6.3.7 *nbsp;预先加载代理函数 159
  • 6.3.8 *nbsp;修改导入和导出表 159
  • 6.3.9 *nbsp;对目标函数进行手术改变 1**
  • 6.3.10 *nbsp;核心转储文件格式 166
  • 6.3.11 *nbsp;核心转储文件分析工具 169
  • *.* *nbsp;本章小结 170
  • 第7章 *nbsp;*nbsp;调试多线程程序 171
  • 7.1 *nbsp;竞争条件 171
  • 7.2 *nbsp;它是竞争条件吗 172
  • 7.3 *nbsp;调试竞争条件 174
  • 7.4 *nbsp;实战故事5:记录重要区域 175
  • 7.4.1 *nbsp;症状 175
  • 7.4.2 *nbsp;分析调试 175
  • 7.5 *nbsp;死锁 177
  • 7.6 *nbsp;本章小结 179
  • 第** *nbsp;*nbsp;更多调试方法 180
  • 8.1 *nbsp;重现错误 180
  • 8.1.1 *nbsp;归因 181
  • 8.1.2 *nbsp;收集环境信息 182
  • 8.1.3 *nbsp;重建环境 184
  • 8.2 *nbsp;防止未来的bug 184
  • 8.2.1 *nbsp;知识保留和传递 185
  • 8.2.2 *nbsp;增强提前检查 185
  • 8.2.3 *nbsp;编写更好调试的代码 185
  • 8.3 *nbsp;不要忘记这些调试规则 1**
  • 8.3.1 *nbsp;分治法 1**
  • 8.3.2 *nbsp;退一步,获取新的观点 1**
  • 8.3.3 *nbsp;保留调试历史 190
  • ......

Tipps zur Reduzierung der Versandkosten

1)Entfernen Sie die Originalverpackung, zum Beispiel, wenn Sie ein Paar Schuhe kaufen, können Sie den Schuhkarton weglassen, was viel beim Volumengewicht spart.

2)Die Versandkosten werden normalerweise pro 0,5KG berechnet. Wenn Sie also ein Produkt kaufen, das nur 0,1KG wiegt, sollten Sie in Erwägung ziehen, 2-3 Stück auf einmal zu kaufen, was die Versandkosten für Ihre Bestellung nicht erhöht.

Volumengewicht

Das Volumengewicht bezieht sich auf die Gesamtgröße eines Pakets und wird in Volumen-Kilogramm gemessen. Das Volumengewicht kann berechnet werden, indem man die Länge, Breite und Höhe eines Pakets (in cm) multipliziert und diese Zahl durch 5000 teilt (einige Spediteure verwenden einen Divisor von 6000/7000 usw.).

Volumetric Weight

Verbotene Artikel (aber nicht beschränkt) für den internationalen Versand,

  • cigarette Zigarette
  • alcohol Alkohol
  • liquid Flüssigkeit
  • knife-scissor Messer/Schere
  • toy-gun Spielzeugpistole
  • seeds Samen
  • animals Lebende Tiere
  • flowers Echte Blumen

Die folgenden Artikel (aber nicht beschränkt) dürfen möglicherweise nur mit bestimmten Logistiklinien verschickt werden.,

  • cream Creme
  • cosmetics Kosmetik
  • snacks Snacks
  • medicine Medizin
Women's Clothing (Coats & Jackets, Dresses, T-Shirts, Tops, Suits)
Standard Size
China (cm) 160-165/84-86 165-170 / 88-90 167-172 / 92-96 168-173 / 98-102 170-176 / 106-110
International XS S M L XL
USA 2 4-6 8-10 12-14 16-18
Europe 34 34-36 38-40 42 44
Bra - Under bust
Standard Size
China
(cm)
76.2 81.3 86.4 91.5 96.5 101.6 106.7 112 117 122 127 132 137 142
USA 30 32 34 36 38 40 42 44 46 48 50 52 54 56
UK 30 32 34 36 38 40 42 44 46 48 50 52 54 56
Europe   70 75 80 85 90                
France   85 90 95 100 105                
Italy   1 2 3 4 5                
Bra - Cup size
Standard Size
China A B C D E                  
USA AA A B C D DD DDD/E F FF G GG H HH J
UK AA A B C D DD E F FF G GG H HH J
Europe AA A B C D E F              
France AA A B C D E F              
Italy   B B/none C D DD E F            
Women's Underwear
Standard Size
China S M L XL XXL XXXL
International XS S M L XL XXL
USA 2 4 6 8 10 12
UK 6 8 10 12 14 16
Europe 32 34 36 38 40 42
France 34 36 38 40 42 44
Italy 38 40 42 44 46 48
Women's Shoes
Standard Size
Length (cm) 22.8 23.1 23.5 24.1 24.5 25.1 25.7 26 26.7 27.3 27.9 28.6 29.2
China 35.5 36 37 38 39 40 41.5 42 43 44.5 46 47 48
USA 5 5.5 6 7 7.5 8.5 9.5 10 10.5 12 13 14 15.5
UK 2.5 3 3.5 4.5 5 6 7 7.5 8 9.5 10.5 11.5 13
Europe 35 35.5 36 37.5 38 39 41 42 43 44 45 46.5 48.5
Men's Clothing (Coats & Jacketst,T-Shirts,Suits)
Standard Size
China (cm) 165 / 88-90 170 / 96-98 175 / 108-110 180 / 118-122 185 / 126-130
International S M L XL XXL
Men's Clothing (Shirts)
Standard Size
China (cm) 36 - 37 38 - 39 40 - 42 43 - 44 45 - 47
International S M L XL XXL
Men's Clothing (Pants)
Size (cm) 42 44 46 48 50
Waist (cm) 68 - 72 cm 71 - 76 cm 75 - 80 cm 79 - 84 cm 83 - 88 cm
Outseam (cm) 99 cm 101.5 cm 104 cm 106.5 cm 109 cm
Men's Underwear
Standard Size
China(cm) 72-76 76-81 81-87 87-93 93-98
International S M L XL XXL
USA(inch) 28-30 30-32 32-34 34-38 38-42
Men's Shoes
Standard Size
Length(cm) 24.5 25.1 25.7 26 26.7 27 27.6 28.3 28.6 28.9
China 39.5 41 42 43 44 44.5 46 47 47.5 48
USA 6 7 8 8.5 9.5 10 11 12 12.5 13
UK 5.5 6.5 7.5 8 9 9.5 10.5 11.5 12 12.5
Europe 38 39 41 42 43.5 44 45 46 46.5 47
长度Length
Imperial英制 Meric公制
1 inch[in] 英寸 ---- 2.54 cm 厘米
1 foot[ft] 英尺 12 in 英寸 0.03048 m 米
1 yard[yd] 码 3 ft 英尺 0.9144 m 米
1 mile[mi] 英里 1760 yd 码 1.6093 km 千米
1 int nautical mile[inm] 海里 2025.4 yd 码 1.853 km 千米
面积Area
Imperial英制 Meric公制
1 sq inch[in2] 平方英寸 ---- 6.4516 cm2 平方厘米
1 sq foot[ft2] 平方英尺 144 in2 平方英寸 0.0929 m2 平方米
1 sq yard[yd2] 平方码 9 ft2 平方英尺 0.8361 m2 平方米
1 acre 英亩 4840 yd2 平方码 4046.9 m2 平方米
1 sql mile[mile2] 平方英里 640 acre 英亩 2.59 km2 平方千米
体积/容量Volume/Capacity
Imperial英制 Meric公制
1 fluid ounce 液量蛊司 1.048 UK fl oz 英制液量蛊司 29.574 ml 毫升
1 pint(16 fl oz 液量品脱)品脱 0.8327 UK pt 英制品脱 0.4731 l 升
1 gallon 加仑 0.8327 UK gal 英制加仑 3.7854 l 升
重量Weight
Imperial英制 Meric公制
1 ounce[oz]蛊司 437.5 grain 格令 28.35 g 克
1 pound[lb]磅 16 oz 蛊司 0.4536 kg 千克
1 stone 石 14 lb 磅 6.3503 kg 千克
1 hundredweight[cwt] 英担 112 lb 磅 50.802 kg 千克
1 long ton(UK) 长顿 20 cwt 英担 1.061 t 顿

Weitere Hilfeoptionen

1. Bitte klicken Sie auf HILFE, um weitere Informationen zu erhalten.

2. Kontaktieren Sie uns unter [email protected]

3. Chatten Sie mit uns or Über WhatsApp chatten