-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
6/12(六) ~ 6/14(一) 端午節門市公休 3 天
防疫期間 門市僅限取書, 不開放參觀
並提早到6點打烊, 星期日公休
6/8 新書到! 6/1 新書到! 5/25 新書到! 5/18 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

C/C++代碼調試的藝術

( 簡體 字)
作者:張海洋類別:1. -> 程式設計 -> C -> C
   2. -> 程式設計 -> C++ -> C++
譯者:
出版社:人民郵電出版社C/C++代碼調試的藝術 3dWoo書號: 54004
詢問書籍請說出此書號!

有庫存
NT定價: 450
折扣價: 422

出版日:2/1/2021
頁數:289
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787115554635
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

《C/C++代碼調試的藝術》圍繞C/C++程序調試這一主題,系統深入地介紹了在Windows和Linux操作系統上如何高效地調試C/C++程序。
《C/C++代碼調試的藝術》分為11章,內容涵蓋了程序調試的基本知識、Visual C++調試程序的基本功能與技巧、Linux系統中gdb工具的使用、死鎖調試、動態庫調試、內存泄漏檢查、遠程調試、崩潰轉儲文件分析、發行版調試,以及調試的高級話題和調試擴展方面的知識。
《C/C++代碼調試的藝術》作為學習C/C++調試技術的重要資料,講解通俗易懂,選取的示例注重理論與實際的聯系。無論是C/C++的初學者,還是經驗豐富的開發人員,都會從中受益。
目錄:

第 1章 C/C++調試基本知識 1
1.1 BUG與Debug 1
1.2 為什么選擇C/C++ 3
1.3 什么是調試器 4
第 2章 Visual C++調試基本功能 5
2.1 Visual C++簡介 5
2.1.1 VC 2019版本選擇 7
2.1.2 VC 2019安裝 9
2.2 斷點管理 10
2.2.1 設置/刪除斷點 10
2.2.2 禁用斷點 11
2.2.3 查看所有斷點 11
2.3 調試執行 14
2.3.1 啟動調試 14
2.3.2 逐語句執行 15
2.3.3 逐過程執行 17
2.3.4 跳出執行 17
2.3.5 運行到光標處 17
2.3.6 多次執行代碼 18
2.4 監視/快速監視 20
2.4.1 快速監視 20
2.4.2 監視窗口 21
2.4.3 表達式支持 23
2.5 內存查看 25
2.5.1 字符串內存布局 26
2.5.2 整型變量內存布局 27
2.6 通過“局部變量”窗口和“自動”窗口查看變量 28
2.6.1 “局部變量”窗口查看變量 28
2.6.2 “自動”窗口查看變量 30
2.7 即時窗口 31
2.7.1 顯示變量的值 31
2.7.2 執行內嵌函數 32
2.8 調用堆棧 32
2.8.1 調用堆棧基本信息 33
2.8.2 設置符號信息 33
2.9 多線程管理 36
2.9.1 創建多線程測試項目 36
2.9.2 開始調試多線程程序 37
2.10 查看錯誤碼 40
2.11 調試宏Assert使用 43
2.11.1 Assert宏簡介 44
2.11.2 使用Assert宏的注意事項 45
2.12 其他 46
2.12.1 編輯并繼續調試 46
2.12.2 字符串可視化工具 47
2.12.3 條件斷點 48
2.12.4 函數斷點 51
2.12.5 數據斷點 52
2.12.6 VC調試常用快捷鍵和組合鍵列表 55
第3章 Linux系統gdb調試基本功能 57
3.1 Linux C/C++編程基本知識 57
3.1.1 開發環境安裝 58
3.1.2 開發第 一個C/C++程序 61
3.2 gdb簡介 68
3.2.1 gdb的安裝 69
3.2.2 gdb常用功能概覽 70
3.3 調試執行 71
3.3.1 啟動調試 71
3.3.2 啟動調試并添加參數 74
3.3.3 附加到進程 75
3.4 斷點管理 77
3.4.1 設置斷點 77
3.4.2 啟用/禁用斷點 86
3.4.3 啟用斷點一次 87
3.4.4 啟用斷點并刪除 88
3.4.5 啟用斷點并命中N次 89
3.4.6 忽略斷點前N次命中 90
3.4.7 查看斷點 90
3.4.8 刪除斷點 91
3.5 程序執行 92
3.5.1 啟動程序 92
3.5.2 繼續運行 93
3.5.3 繼續運行并跳過當前斷點N次 94
3.5.4 繼續運行直到當前函數執行完成 94
3.5.5 單步執行 95
3.5.6 逐過程執行 96
3.6 查看當前函數參數 96
3.7 查看/修改變量的值 97
3.7.1 使用gdb內嵌函數 98
3.7.2 查看結構體/類的值 99
3.7.3 查看數組 101
3.8 自動顯示變量的值 102
3.9 顯示源代碼 104
3.10 查看內存 106
3.11 查看寄存器 109
3.12 查看調用棧 111
3.12.1 查看棧回溯信息 112
3.12.2 切換棧幀 113
3.12.3 查看幀信息 115
3.13 線程管理 116
3.13.1 查看所有線程信息 118
3.13.2 切換線程 118
3.13.3 為線程設置斷點 119
3.13.4 為線程執行命令 120
3.14 其他 121
3.14.1 觀察點 121
3.14.2 捕獲點 124
3.14.3 搜索源代碼 126
3.14.4 查看變量類型 127
3.14.5 跳轉執行 130
3.14.6 窗口管理 132
3.14.7 調用Shell命令 133
3.14.8 assert宏使用 134
3.14.9 gdb常用命令列表 136
第4章 多線程死鎖調試 141
4.1 創建多線程 142
4.2 多線程的同步 144
4.3 C++標準庫中的鎖 146
4.3.1 std::mutex類 147
4.3.2 std::timed_mutex類 149
4.3.3 std::recursive_mutex和std::recursive_timed_mutex 149
4.4 死鎖調試 150
4.4.1 Windows死鎖調試 151
4.4.2 Linux系統中的死鎖調試 153
4.4.3 死鎖條件 156
4.4.4 解決死鎖 157
第5章 調試動態庫 160
5.1 Windows系統動態庫開發與調試 161
5.1.1 創建動態庫 161
5.1.2 使用動態庫 164
5.1.3 調試動態庫 165
5.2 Linux系統動態庫開發與調試 170
5.2.1 創建動態庫 171
5.2.2 使用動態庫 174
5.2.3 調試動態庫 177
第6章 內存檢查 183
6.1 VC調試器和C/C++內存檢查機制 183
6.1.1 內存泄漏測試程序 184
6.1.2 使用VC運行時庫函數來檢測內存泄漏 186
6.1.3 檢測堆內存破壞(堆溢出) 193
6.1.4 其他調試函數 197
6.2 Linux系統內存檢查 198
6.2.1 檢查內存泄漏 198
6.2.2 檢查堆溢出 200
6.2.3 檢查棧溢出 201
6.2.4 檢查全局內存溢出 202
6.2.5 檢查釋放后繼續使用 203
第7章 遠程調試 205
7.1 遠程調試簡介 205
7.2 Visual C++遠程調試 206
7.2.1 準備測試程序 206
7.2.2 準備目標機環境 206
7.2.3 啟動遠程調試 209
7.3 Linux系統gdb遠程調試 215
7.3.1 準備測試程序 215
7.3.2 準備目標機環境 216
7.3.3 啟動調試 216
7.4 使用VC遠程調試Linux程序 219
7.5 使用VC創建Linux程序并調試 221
第8章 轉儲文件調試分析 225
8.1 Windows系統中的轉儲文件分析 225
8.1.1 轉儲文件死鎖調試分析 225
8.1.2 崩潰轉儲調試分析 228
8.2 Linux系統中的轉儲文件分析 234
8.2.1 內核轉儲文件調試分析死鎖 234
8.2.2 內核轉儲文件調試分析程序崩潰問題 238
第9章 發行(Release)版調試 242
9.1 在VC中調試發行版 242
9.1.1 去優化測試 242
9.1.2 保留優化調試 245
9.2 在gdb中調試發行版 249
9.2.1 從調試版中提取調試符號 251
9.2.2 直接使用調試版作為符號源 252
第 10章 調試高級話題 255
10.1 斷點的秘密 255
10.2 你好,燙 258
10.3 與Windows調試相關的API 261
10.3.1 輸出窗口輸出信息 262
10.3.2 檢測是否在調試器運行 262
10.3.3 Windows調試API列表 263
10.4 與Linux調試相關的系統調用 264
第 11章 調試擴展知識 265
11.1 Windows驅動開發調試入門 265
11.1.1 環境準備 265
11.1.2 創建Helloworld驅動項目 266
11.1.3 編譯、構建驅動 267
11.1.4 部署驅動 267
11.1.5 安裝驅動程序 271
11.1.6 調試驅動 272
11.2 WinDbg簡介 273
11.2.1 直接啟動應用程序進行調試 273
11.2.2 附加到進程 274
11.2.3 調試轉儲文件 276
11.2.4 WinDbg命令列表 276
11.3 Linux內核驅動開發簡介 279
11.3.1 環境準備 279
11.3.2 開發Helloworld 280
11.3.3 加載和卸載驅動 281
11.4 Linux內核轉儲文件調試分析 283
11.4.1 Ubuntu系統 283
11.4.2 在CentOS系統中配置內核轉儲 285
11.4.3 調試分析內核轉儲文件 287
序: