注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件與程序設計笨辦法學C語言

笨辦法學C語言

笨辦法學C語言

定 價:¥69.00

作 者: 澤德 A.肖(Zed A.Shaw) 著,王巍巍 譯
出版社: 人民郵電出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787115477309 出版時間: 2018-04-01 包裝: 平裝
開本: 16開 頁數: 306 字數:  

內容簡介

  這本書的目標是讓讀者掌握足夠的C語言技能,從而可以自己用C語言編寫程序或者修改別人的C語言代碼,成為一名的程序員。但這并不完全是一本講C語言編程的書,書中還重點介紹防御性編程。本書以習題的方式引導讀者一步一步學習編程,結構非常簡單,共包括52個習題,每一個習題都重點講解一個重要的主題,多數是以代碼開始,然后解釋代碼的編寫,再運行并測試程序,給出附加任務。此外,每個習題都配套教學視頻。本書是寫給學過編程語言的讀者的,本書有趣、簡單,并且講解方法獨特,讓讀者了解眾多C語言的基礎知識和C程序中常見的缺陷,在慢慢增強自己的技術能力的同時,深入了解怎樣破壞程序,以及怎樣讓代碼更安全。

作者簡介

  作者簡介澤德 A. 肖(Zed A.Shaw) 是一位狂熱的吉他手、程序員和編程書作家。他的書教會了世界各地的上百萬人如何編寫軟件。他的《笨辦法學Python》和《笨辦法學Ruby》《》(這兩本書都已出到第3版)在全球擁有數百萬讀者。他編寫的軟件大大小小的企業(yè)都在使用。他的文章經常被眾多極客圈的人閱讀和引用。他是一位活躍而有趣的作家,他會讓你大笑,也會讓你思考。譯者簡介Wang巍巍是一名受軟件和編程的吸引,從硬件測試做到軟件測試,又從軟件測試做到軟件開發(fā)的IT從業(yè)人員。代碼和翻譯是他的兩大愛好,此外他還喜歡在網上撰寫和翻譯一些不著邊際的話題和文章。如果讀者對書中的內容有疑問,或者發(fā)現了書中的錯誤,再或者只是想隨便聊聊,請通過電子郵件(wangweiwei@outlook.com)與他聯系。

圖書目錄

目錄
習題0 準備工作 1
Linux 1
Mac OS X 1
Windows 2
文本編輯器 2
習題1 打開塵封的編譯器 4
代碼詳解 4
應該看到的結果 5
如何破壞程序 5
附加任務 6
習題2 使用Makefile構建程序 7
使用make 7
應該看到的結果 8
如何破壞程序 9
附加任務 9
習題3 格式化打印 10
應該看到的結果 10
外部研究 11
如何破壞程序 11
附加任務 12
習題4 使用調試器 13
GDB小技巧 13
GDB快速參考 13
LLDB快速參考 14
習題5 記憶C語言運算符 15
如何記憶 15
運算符列表 16
習題6 記憶C語言語法 19
關鍵字 19
語法結構 20
鼓勵的話 23
告誡的話 24
習題7 變量和類型 25
你應該看到的結果 26
如何破壞程序 27
附加任務 27
習題8 if, else-if, else 28
應該看到的結果 29
如何破壞程序 29
附加任務 30
習題9 while循環(huán)和布爾表達式 31
應該看到的結果 31
如何破壞程序 32
附加任務 32
習題10 switch語句 33
應該看到的結果 35
如何破壞程序 36
附加任務 36
習題11 數組和字符串 37
應該看到的結果 38
如何破壞程序 39
附加任務 39
習題12 數組和大小 41
應該看到的結果 42
如何破壞程序 43
附加任務 43
習題13 for循環(huán)和字符串數組 44
應該看到的結果 45
理解字符串數組 46
如何破壞程序 46
附加任務 46
習題14 編寫和使用函數 47
應該看到的結果 48
如何破壞程序 49
附加任務 49
習題15 指針,可怕的指針 50
應該看到的結果 52
解釋指針 53
指針的實際應用 54
指針詞匯表 54
指針不是數組 54
如何破壞程序 55
附加任務 55
習題16 結構體和指向結構體的指針 56
應該看到的結果 59
什么是結構體 59
如何破壞程序 60
附加任務 60
習題17 內存分配:堆和棧 61
應該看到的結果 67
堆分配和棧分配的區(qū)別 67
如何破壞程序 68
附加任務 69
習題18 指向函數的指針 70
應該看到的結果 74
如何破壞程序 74
附加任務 75
習題19 Zed的強悍的調試宏 76
C語言錯誤處理的問題 76
調試宏 77
使用dbg.h 79
應該看到的結果 82
CPP如何擴展宏 82
附加任務 84
習題20 調試技巧 85
調試打印和GDB 85
調試策略 86
附加任務 87
習題21 數據類型與流程控制 88
可用數據類型 88
類型修飾符 88
類型限定符 89
類型轉換 89
類型大小 89
可用運算符 91
數學運算符 92
數據運算符 92
邏輯運算符 92
位運算符 93
布爾運算符 93
賦值運算符 93
可用的控制結構 94
附加任務 94
習題22 棧、作用域和全局變量 95
ex22.c和ex22.h 95
ex22_main.c 97
應該看到的結果 99
作用域、棧和bug 100
如何破壞程序 101
附加任務 101
習題23 達夫設備 102
應該看到的結果 105
謎底 105
何必呢 106
附加任務 106
習題24 輸入、輸出、文件 107
應該看到的結果 109
如何破壞程序 110
I/O函數 110
附加任務 111
習題25 變參函數 112
應該看到的結果 116
如何破壞程序 116
附加任務 116
習題26 logfind項目 117
logfind的需求 117
習題27 創(chuàng)造性與防御性編程 118
創(chuàng)造性程序員思維模式 118
防御性程序員思維模式 119
防御性編程的八個策略 119
應用八大策略 120
信任輸入 120
預防錯誤 122
盡早出錯,公開出錯 123
記錄假設 124
預防優(yōu)先,文檔其次 124
自動化一切 125
簡潔明了 125
質疑 126
次序不重要 126
附加任務 127
習題28 Makefile中級課程 128
基本項目結構 128
Makefile 129
開頭 130
構建目標 131
單元測試 132
清理 133
安裝 133
檢查工具 134
應該看到的結果 134
附加任務 135
習題29 庫和鏈接 136
動態(tài)加載共享庫 137
應該看到的結果 139
如何破壞程序 140
附加任務 141
習題30 自動化測試 142
為測試框架連線 143
附加任務 147
習題31 常見未定義行為 148
重要的20個未定義行為 149
常見的未定義行為 149
習題32 雙鏈表 153
什么是數據結構 153
創(chuàng)建庫 153
雙鏈表 154
定義 155
實現 156
測試 160
應該看到的結果 162
如何改進程序 163
附加任務 163
習題33 鏈表算法 164
冒泡排序和歸并排序 164
單元測試 165
實現 167
應該看到的結果 170
如何改進程序 170
附加任務 171
習題34 動態(tài)數組 172
優(yōu)勢和劣勢 180
如何改進程序 180
附加任務 181
習題35 排序和搜索 182
基數排序和二分搜索 185
C語言的聯合體 186
實現 188
RadixMap_find與二分搜索 194
RadixMap_sort和radix_sort 194
如何改進程序 195
附加任務 196
習題36 更安全的字符串 197
為什么C語言的字符串糟透了 197
使用bstrlib 198
學習庫 199
習題37 散列表 201
單元測試 208
如何改進程序 211
附加任務 211
習題38 散列表算法 213
應該看到的結果 218
如何破壞程序 219
附加任務 220
習題39 字符串算法 221
應該看到的結果 228
分析結果 230
附加任務 231
習題40 二叉搜索樹 232
如何改進程序 245
附加任務 245
習題41 devpkg項目 246
devpkg是什么 246
我們要實現的東西 246
設計 247
Apache Portable Runtime 247
項目布局 248
其他依賴 249
Makefile文件 249
源代碼文件 250
DB函數 251
shell函數 254
命令函數 259
devpkg主函數 264
zui后的挑戰(zhàn) 267
習題42 棧與隊列 268
應該看到的結果 271
如何改進程序 272
附加任務 272
習題43 簡單的統(tǒng)計引擎 273
滾動標準差和平均值 273
實現 274
如何使用這個引擎 279
附加任務 280
習題44 環(huán)形緩沖區(qū) 281
單元測試 284
應該看到的結果 284
如何改進程序 285
附加任務 285
習題45 簡單的TCP/IP客戶端 286
加強Makefile 286
netclient的代碼 286
應該看到的結果 290
如何破壞程序 291
附加任務 291
習題46 三元搜索樹 292
優(yōu)點和缺點 300
如何改進程序 300
附加任務 301
習題47 快速URL路由 302
應該看到的結果 305
如何改進程序 305
附加任務 306
習題48 簡單網絡服務器 307
規(guī)格說明 307
習題49 統(tǒng)計服務器 308
規(guī)格說明 308
習題50 統(tǒng)計數據的路由 309
習題51 存儲統(tǒng)計數據 310
軟件規(guī)格 310
習題52 入侵和改進你的服務器 311
接下來的路 312

本目錄推薦

掃描二維碼
Copyright ? 讀書網 www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號