注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計C/C++及其相關(guān)計算機(jī)科學(xué):C++軟件工程方法

計算機(jī)科學(xué):C++軟件工程方法

計算機(jī)科學(xué):C++軟件工程方法

定 價:¥85.00

作 者: (美)弗羅占(Forouzan, B.A.), (美)吉爾博格(Gilberg, R.F.)著;李海峰譯
出版社: 清華大學(xué)出版社
叢編項: 國外計算機(jī)科學(xué)經(jīng)典教材
標(biāo) 簽: C語言 程序設(shè)計

ISBN: 9787302120414 出版時間: 2006-01-01 包裝: 平裝
開本: 16開 頁數(shù): 734 字?jǐn)?shù):  

內(nèi)容簡介

  本書采用結(jié)構(gòu)化、循序漸進(jìn)方法講解編程基本原理?;谳^早培養(yǎng)良好習(xí)慣的原則,本書通過強(qiáng)調(diào)結(jié)構(gòu)化編程原則和軟件工程原理介紹了計算機(jī)科學(xué)知識。本書所有完整的程序都采用連貫的風(fēng)格,作者詳細(xì)分析了這些程序,深入解釋了編程風(fēng)格和標(biāo)準(zhǔn),在介紹具體的C++語言實現(xiàn)之前,通常都會總結(jié)相關(guān)的原理和原則,便于讀者理解和掌握核心概念。本書特色擴(kuò)展了對類的介紹,安排整章內(nèi)容介紹模板、繼承和異常處理重新編寫了書中的程序,反映了C++的風(fēng)格和功能增加了對字符串的介紹,反映了最新的ISO字符串類大量練習(xí)題為學(xué)生提供了練習(xí)編程的機(jī)會配套網(wǎng)站提供源代碼下載:http://compsci.brookscole.com

作者簡介

暫缺《計算機(jī)科學(xué):C++軟件工程方法》作者簡介

圖書目錄


目 錄
第1章 計算機(jī)導(dǎo)論 1
1.1 計算機(jī)系統(tǒng) 1
1.2 計算機(jī)硬件 1
1.3 計算機(jī)軟件 2
1.3.1 系統(tǒng)軟件 2
1.3.2 應(yīng)用軟件 3
1.4 計算環(huán)境 3
1.4.1 個人計算環(huán)境 3
1.4.2 分時環(huán)境 4
1.4.3 客戶機(jī)/服務(wù)器環(huán)境 4
1.4.4 分布式計算 4
1.5 計算機(jī)語言 5
1.5.1 機(jī)器語言 5
1.5.2 符號語言 6
1.5.3 高級語言 7
1.5.4 自然語言 7
1.6 編寫、編輯、編譯和連接程序 8
1.6.1 編寫和編輯程序 8
1.6.2 編譯程序 8
1.6.3 連接程序 8
1.7 程序的執(zhí)行 9
1.8 系統(tǒng)開發(fā) 9
1.8.1 系統(tǒng)開發(fā)生存周期 10
1.8.2 程序開發(fā) 10
1.9 軟件工程和編程風(fēng)格 14
1.10 要點和常見的編程錯誤 15
1.11 練習(xí)題 16
1.11.1 復(fù)習(xí)題 16
1.11.2 練習(xí) 17
第2章 C++語言簡介 18
2.1 背景知識 18
2.2 C++程序 19
2.2.1 C++程序的結(jié)構(gòu) 19
2.2.2 一個簡單的程序 19
2.2.3 第一個程序 20
2.2.4 注釋 22
2.3 標(biāo)識符 23
2.4 數(shù)據(jù)類型 24
2.4.1 空型數(shù)據(jù) 25
2.4.2 整型數(shù)據(jù) 25
2.4.3 字符型數(shù)據(jù) 26
2.4.4 浮點型數(shù)據(jù) 26
2.4.5 C++中的邏輯數(shù)據(jù) 27
2.5 變量 28
2.5.1 變量聲明和定義 28
2.5.2 變量初始化 29
2.6 常量 30
2.6.1 整型常量 30
2.6.2 浮點常量 31
2.6.3 字符常量 31
2.6.4 字符串常量 32
2.6.5 布爾常量 32
2.7 編碼常量 33
2.7.1 字面量常量 33
2.7.2 定義常量 33
2.7.3 內(nèi)存常量 33
2.7.4 小結(jié) 34
2.8 讀寫數(shù)據(jù) 34
2.8.1 數(shù)據(jù)源和目標(biāo) 35
2.8.2 標(biāo)準(zhǔn)流 35
2.8.3 往標(biāo)準(zhǔn)輸出中寫數(shù)據(jù)(cout) 36
2.8.4 寫入錯誤(cerr和clog) 37
2.8.5 格式化輸出 37
2.8.6 從標(biāo)準(zhǔn)輸入中讀數(shù)據(jù)(cin) 45
2.9 編程舉例 46
2.9.1 打印“Nothing!” 46
2.9.2 打印字符值 47
2.9.3 計算面積和周長 48
2.10 軟件工程和編程風(fēng)格 50
2.10.1 程序文檔 50
2.10.2 數(shù)據(jù)名稱 51
2.10.3 數(shù)據(jù)隱匿 52
2.11 提示和常見的編程錯誤 53
2.12 練習(xí)題 53
2.12.1 復(fù)習(xí)題 53
2.12.2 練習(xí) 54
2.12.3 項目 55
第3章 C++程序的結(jié)構(gòu) 57
3.1 表達(dá)式 57
3.1.1 基本表達(dá)式 58
3.1.2 二元表達(dá)式 59
3.1.3 賦值表達(dá)式 61
3.1.4 后綴表達(dá)式 63
3.1.5 一元表達(dá)式 64
3.2 優(yōu)先級和結(jié)合性 66
3.2.1 優(yōu)先級 67
3.2.2 結(jié)合性 68
3.3 副作用 69
3.4 表達(dá)式求值 70
3.4.1 沒有副作用的表達(dá)式 70
3.4.2 有副作用的表達(dá)式 70
3.4.3 警告 72
3.5 混合型表達(dá)式 72
3.5.1 隱式類型轉(zhuǎn)換 73
3.5.2 顯式類型轉(zhuǎn)換(強(qiáng)制轉(zhuǎn)換) 74
3.6 語句 76
3.6.1 表達(dá)式語句 76
3.6.2 復(fù)合語句 77
3.6.3 語句和定義常量 77
3.7 示例程序 78
3.7.1 示例:計算商和余數(shù) 78
3.7.2 示例:顯示整數(shù)右邊的數(shù)字 79
3.7.3 示例:計算平均數(shù) 79
3.7.4 示例:把弧度轉(zhuǎn)換為角度 80
3.7.5 示例:將華氏溫度轉(zhuǎn)換為
攝氏溫度 81
3.7.6 示例:計算銷售總額 82
3.7.7 示例:計算學(xué)生分?jǐn)?shù) 83
3.8 軟件工程和編程風(fēng)格 85
3.8.1 KISS 86
3.8.2 括弧 86
3.8.3 用戶通信 86
3.9 提示與常見的編程錯誤 87
3.10 練習(xí)題 88
3.10.1 復(fù)習(xí)題 88
3.10.2 練習(xí) 89
3.10.3 項目 90
第4章 函數(shù) 92
4.1 設(shè)計結(jié)構(gòu)化程序 92
4.2 C++中的函數(shù) 93
4.3 用戶定義函數(shù) 95
4.3.1 沒有參數(shù)的void函數(shù) 95
4.3.2 帶有參數(shù)的void函數(shù) 96
4.3.3 返回值的函數(shù) 97
4.3.4 函數(shù)定義 99
4.3.5 原型聲明 100
4.3.6 函數(shù)調(diào)用 101
4.3.7 函數(shù)示例 102
4.3.8 參數(shù)傳遞 107
4.4 默認(rèn)參數(shù)變元 112
4.5 標(biāo)準(zhǔn)庫函數(shù) 113
4.5.1 用于數(shù)學(xué)運算的標(biāo)準(zhǔn)函數(shù) 113
4.5.2 一般庫函數(shù) 115
4.5.3 換算隨機(jī)數(shù)字 117
4.6 作用域 119
4.6.1 一般規(guī)則 119
4.6.2 全局作用域 119
4. 6.3 局部作用域 120
4.7 編程示例——計算器程序 121
4.8 軟件工程和編程風(fēng)格 122
4.8.1 結(jié)構(gòu)圖 122
4.8.2 結(jié)構(gòu)圖規(guī)則和符號 123
4.8.3 函數(shù)內(nèi)聚性 125
4.8.4 自上至下的開發(fā) 126
4.9 提示和常見的編程錯誤 128
4.10 練習(xí)題 129
4.10.1 復(fù)習(xí)題 129
4.10.2 練習(xí) 130
4.10.3 項目 131
第5章 選擇——決策 134
5.1 邏輯數(shù)據(jù)和操作符 134
5.1.1 C++中的邏輯數(shù)據(jù) 134
5.1.2 邏輯操作符 134
5.1.3 邏輯表達(dá)式求值 136
5.1.4 關(guān)系操作符 138
5.2 雙向選擇 139
5.2.1 if...else語句 140
5.2.2 無效的else語句 141
5.2.3 嵌套if語句 142
5.2.4 懸掛else問題 143
5.2.5 簡化if語句 144
5.2.6 條件表達(dá)式 145
5.2.7 處理主要錯誤 146
5.2.8 雙向選擇示例 147
5.3 多向選擇 151
5.3.1 switch語句 151
5.3.2 else-if語句 156
5.4 其他標(biāo)準(zhǔn)庫函數(shù) 157
5.5 菜單程序 159
5.6 軟件工程和編程風(fēng)格 162
5.6.1 從屬語句 162
5.6.2 否定邏輯 163
5.6.3 選擇語句規(guī)則 163
5.6.4 結(jié)構(gòu)圖中的選擇 164
5.7 提示及常見的編程錯誤 165
5.8 練習(xí)題 166
5.8.1 復(fù)習(xí)題 166
5.8.2 練習(xí) 167
5.8.3 項目 169
第6章 循環(huán) 173
6.1 循環(huán)的概念 173
6.2 前測型循環(huán)與后測型循環(huán) 173
6.3 初始化與更新 175
6.3.1 循環(huán)初始化 175
6.3.2 循環(huán)更新 175
6.4 事件控制循環(huán)與計數(shù)器控制循環(huán) 175
6.4.1 事件控制循環(huán) 176
6.4.2 計數(shù)器控制循環(huán) 176
6.4.3 循環(huán)對比 177
6.5 C++中的循環(huán) 177
6.5.1 while循環(huán) 177
6.5.2 for循環(huán) 181
6.5.3 do...while循環(huán) 184
6.5.4 逗號表達(dá)式 186
6.6 循環(huán)示例 188
6.6.1 for循環(huán) 188
6.6.2 while循環(huán) 193
6.6.3 do...while循環(huán) 194
6.7 與循環(huán)相關(guān)的其他語句 197
6.7.1 break語句 197
6.7.2 continue語句 198
6.8 循環(huán)應(yīng)用 200
6.8.1 求和 200
6.8.2 求積 201
6.8.3 最小數(shù)與最大數(shù) 201
6.8.4 查詢 202
6.9 遞歸 203
6.9.1 迭代定義 203
6.9.2 遞歸定義 204
6.9.3 階乘——迭代的解決方法 204
6.9.4 階乘——遞歸的解決方法 205
6.9.5 設(shè)計遞歸函數(shù) 205
6.9.6 Fibonacci數(shù)字 206
6.9.7 遞歸的限制 208
6.9.8 河內(nèi)塔 209
6.9.9 河內(nèi)塔遞歸解決方法 209
6.10 編程示例——計算器程序 212
6.11 軟件工程與編程風(fēng)格 214
6.11.1 結(jié)構(gòu)圖中的循環(huán) 214
6.11.2 確定算法的效率 215
6.11.3 線性循環(huán) 215
6.11.4 對數(shù)循環(huán) 216
6.11.5 嵌套循環(huán) 216
6.11.6 效率的標(biāo)準(zhǔn)度量 219
6.12 提示與常見的編程錯誤 219
6.13 練習(xí)題 220
6.13.1 復(fù)習(xí)題 220
6.13.2 練習(xí) 222
6.13.3 項目 224
第7章 文本I/O 228
7.1 輸入實體和輸出實體 228
7.1.1 文件 228
7.1.2 標(biāo)準(zhǔn)輸入 229
7.1.3 標(biāo)準(zhǔn)輸出 229
7.1.4 標(biāo)準(zhǔn)錯誤 229
7.2 流 229
7.2.1 創(chuàng)建流與連接流 230
7.2.2 標(biāo)準(zhǔn)流 230
7.2.3 文件流 231
7.3 標(biāo)準(zhǔn)庫輸入/輸出函數(shù) 231
7.4 格式化輸入與格式化輸出 234
7.4.1 輸入輸出操作符 234
7.4.2 格式化數(shù)據(jù) 235
7.4.3 小結(jié) 244
7.5 文件示例 245
7.6 字符輸入/輸出函數(shù) 248
7.6.1 get 248
7.6.2 put 248
7.7 字符輸入/輸出示例 249
7.7.1 創(chuàng)建文本文件 249
7.7.2 復(fù)制文本文件 249
7.7.3 計算字符和行數(shù) 250
7.7.4 計算文件中的字?jǐn)?shù) 251
7.8 檢測文件錯誤 253
7.8.1 流狀態(tài) 253
7.8.2 錯誤恢復(fù) 255
7.9 軟件工程與編程風(fēng)格 257
7.10 提示與常見的編程錯誤 260
7.11 練習(xí)題 260
7.11.1 復(fù)習(xí)題 260
7.11.2 練習(xí) 261
7.11.3 項目 262
第8章 數(shù)組 264
8.1 概念 264
8.2 在C++中使用數(shù)組 266
8.2.1 聲明和定義 266
8.2.2 在數(shù)組中存取元素 267
8.2.3 在數(shù)組中存儲值 267
8.2.4 索引操作符的優(yōu)先級 270
8.2.5 索引范圍檢查 270
8.3 數(shù)組和函數(shù) 273
8.3.1 傳遞個體元素 273
8.3.2 傳遞整個數(shù)組 274
8.4 數(shù)組應(yīng)用 275
8.4.1 頻率數(shù)組 275
8.4.2 直方圖 276
8.4.3 隨機(jī)數(shù)序列 279
8.5 排序 281
8.5.1 選擇排序法 282
8.5.2 選擇排序算法 282
8.5.3 上推(冒泡)排序法 283
8.5.4 上推(冒泡)排序算法 284
8.5.5 插入排序法 285
8.5.6 插入排序算法 285
8.5.7 重新編寫的插入排序法 287
8.5.8 排序總結(jié) 288
8.6 搜索 288
8.6.1 順序搜索 289
8.6.2 對分搜索 291
8.7 二維數(shù)組 293
8.7.1 聲明與定義二維數(shù)組 294
8.7.2 把二維數(shù)組傳遞到函數(shù) 298
8.7.3 數(shù)組示例 299
8.8 多維數(shù)組 301
8.9 編程示例——計算行和列的平均數(shù) 302
8.10 軟件工程與編程風(fēng)格 304
8.10.1 測試排序 305
8.10.2 測試搜索 305
8.10.3 分析排序算法 305
8.10.4 分析搜索算法 307
8.11 提示和常見的編程錯誤 308
8.12 練習(xí)題 309
8.12.1 復(fù)習(xí)題 309
8.12.2 練習(xí) 310
8.12.3 項目 311
第9章 指針 315
9.1 概念 315
9.1.1 指針常量 315
9.1.2 指針值 316
9.2 指針變量 318
9.3 通過指針存取變量 318
9.4 指針聲明和定義 320
9.5 指針變量的初始化 321
9.5.1 示例:指針游戲 322
9.5.2 示例:添加兩個數(shù)字 323
9.5.3 示例:指針彈性 324
9.5.4 示例:一個變量的多個指針 324
9.6 指針和函數(shù) 325
9.6.1 作為形參的指針 325
9.6.2 返回指針函數(shù) 326
9.7 指針的指針 327
9.8 兼容性 329
9.8.1 兼容性和void指針 330
9.8.2 強(qiáng)制轉(zhuǎn)換指針 330
9.9 讀寫指針值 331
9.10 左值和右值 332
9.11 指針應(yīng)用 334
9.11.1 把秒轉(zhuǎn)換為小時 334
9.11.2 二次方程 335
9.12 數(shù)組和指針 339
9.13 指針運算和數(shù)組 341
9.13.1 指針和一維數(shù)組 341
9.13.2 指針和其他操作符 343
9.13.2 指針和二維數(shù)組 344
9.14 把數(shù)組傳遞給函數(shù) 345
9.15 內(nèi)存配置函數(shù) 347
9.16 指針數(shù)組 353
9.17 編寫應(yīng)用 354
9.17.1 再研究選擇排序法 354
9.17.2 動態(tài)數(shù)組 356
9.18 軟件工程和編程格式 360
9.18.1 指針和函數(shù)調(diào)用 361
9.18.2 指針和數(shù)組 361
9.18.3 數(shù)組索引交換性 361
9.18.4 動態(tài)內(nèi)存:理論和實踐 361
9.19 要點和常見的編程錯誤 362
9.20 練習(xí)題 364
9.20.1 復(fù)習(xí)題 364
9.20.2 練習(xí) 366
9.20.3 項目 371
第10章 類 375
10.1 基本的類概念 375
10.1.1 存取說明符 375
10.1.2 創(chuàng)建類 377
10.2 類對象 380
10.2.1 實例化 380
10.2.2 訪問對象成員 380
10.2.3 使用類 381
10.2.4 this指針 384
10.3 管理器函數(shù) 384
10.3.1 構(gòu)造函數(shù) 384
10.3.2 復(fù)制構(gòu)造函數(shù) 390
10.3.3 析構(gòu)函數(shù) 393
10.4 增變器和存取器 394
10.4.1 增變器函數(shù) 394
10.4.2 存取器函數(shù) 394
10.5 類常量 394
10.5.1 最大公約數(shù) 395
10.5.2 構(gòu)造函數(shù) 395
10.5.3 改變存儲函數(shù) 396
10.5.4 修訂的分?jǐn)?shù)類 397
10.6 復(fù)雜的類函數(shù) 399
10.6.1 一元類函數(shù) 399
10.6.2 二元類函數(shù) 401
10.6.3 比較分?jǐn)?shù) 405
10.7 編寫應(yīng)用程序 405
10.7.1 account類 405
10.7.2 time類 407
10.8 軟件工程和編程風(fēng)格 410
10.8.1 UML:類圖 410
10.8.2 類之間的關(guān)系 411
10.8.3 UML:對象 412
10.9 提示和常見編程錯誤 413
10.10 練習(xí)題 413
10.10.1 復(fù)習(xí)題 413
10.10.2 練習(xí) 414
10.10.3 項目 416
第11章 更多類功能和其他類型 417
11.1 內(nèi)聯(lián)函數(shù) 417
11.1.1 非成員內(nèi)聯(lián)函數(shù) 418
11.1.2 內(nèi)聯(lián)成員函數(shù) 418
11.2 初始化列表 419
11.3 重載 420
11.3.1 操作符重載 420
11.3.2 最終的分?jǐn)?shù)類頭文件 425
11.4 靜態(tài)成員 429
11.4.1 靜態(tài)數(shù)據(jù)成員 430
11.4.2 靜態(tài)函數(shù)成員 431
11.4.3 靜態(tài)成員的示例 431
11.5 友元類 433
11.6 類和指針 433
11.6.1 包含指針的類 433
11.6.2 對象的指針 435
11.7 對象數(shù)組 436
11.7.1 對象的初始化 436
11.7.2 訪問對象 437
11.8 結(jié)構(gòu) 438
11.8.1 結(jié)構(gòu)應(yīng)用程序 439
11.8.2 初始化 439
11.8.3 小結(jié) 440
11.9 聯(lián)合 440
11.9.1 引用聯(lián)合 441
11.9.2 初啟程序 441
11.10 枚舉類型 442
11.10.1 聲明一個枚舉類型 442
11.10.2 為枚舉類型賦值 443
11.10.3 枚舉類型的轉(zhuǎn)換 443
11.10.4 初始化枚舉常量 444
11.10.5 匿名的枚舉:常量 444
11.11 類型定義(typedef) 445
11.11.1 typedef和移植式程序 445
11.11.2 typedef和數(shù)組聲明 446
11.12 編寫應(yīng)用程序 446
11.12.1 升降機(jī)的設(shè)計 446
11.12.2 升降機(jī)類 447
11.13 軟件工程和編程風(fēng)格 453
11.13.1 耦合 453
11.13.2 數(shù)據(jù)隱藏 456
11.13.3 小結(jié) 456
11.14 提示和常見的編程錯誤 456
11.15 練習(xí)題 457
11.15.1 復(fù)習(xí)題 457
11.15.2 練習(xí) 458
11.15.3 項目 460
第12章 繼承和聚集 462
12.1 繼承 462
12.2 私有、保護(hù)和公有繼承類型 465
12.2.1 私有繼承類型 465
12.2.2 保護(hù)繼承類型 466
12.2.3 公有繼承類型 466
12.2.4 繼承示例 466
12.2.5 多邊形——三角形的實現(xiàn) 466
12.2.6 重寫繼承訪問說明符 470
12.3 繼承期間的管理器函數(shù) 470
12.3.1 構(gòu)造函數(shù) 470
12.3.2 復(fù)制構(gòu)造函數(shù) 471
12.3.3 析構(gòu)函數(shù) 472
12.3.4 員工類示例 472
12.3.5 員工類程序 474
12.4 重寫成員函數(shù) 475
12.4.1 重寫方法示例 475
12.4.2 重寫與重載 477
12.5 多態(tài)性 477
12.5.1 靜態(tài)綁定 478
12.5.2 動態(tài)綁定和虛函數(shù) 479
12.6 純虛函數(shù):抽象類 481
12.6.1 純虛函數(shù) 481
12.6.2 抽象類 481
12.7 分層類中的類型轉(zhuǎn)換 486
12.7.1 強(qiáng)制轉(zhuǎn)換對象 486
12.7.2 強(qiáng)制轉(zhuǎn)換指向?qū)ο蟮闹羔?488
12.8 多重繼承 489
12.9 聚集 491
12.9.1 示例:學(xué)生類 491
12.9.2 聚集與組合 494
12.10 軟件工程和編程風(fēng)格 495
12.10.1 程序設(shè)計概念 495
12.10.2 信息隱藏 495
12.10.3 內(nèi)聚度 495
12.10.4 小結(jié) 498
12.11 提示和常見編程錯誤 498
12.12 練習(xí)題 498
12.12.1 復(fù)習(xí)題 498
12.12.2 練習(xí) 500
12.12.3 項目 501
第13章 模板 503
13.1 函數(shù)模板 503
13.1.1 模板格式 505
13.1.2 重載函數(shù)模板 507
13.1.3 混合參數(shù)類型 507
13.1.4 多重通用參數(shù)類型 508
13.1.5 函數(shù)模板與其他解決方案 510
13.2 類模板 511
13.2.1 類模板的語法 511
13.2.2 定義類 512
13.2.3 對象的實例化 513
13.2.4 數(shù)組類 513
13.2.5 專用成員函數(shù) 517
13.2.6 類模板繼承 517
13.3 軟件工程和編程風(fēng)格 519
13.3.1 原子和復(fù)合數(shù)據(jù) 520
13.3.2 數(shù)據(jù)結(jié)構(gòu) 520
13.3.3 抽象數(shù)據(jù)類型 521
13.3.4 抽象數(shù)據(jù)類型的模型 522
13.3.5 ADT和模板 522
13.4 提示和常見的編程錯誤 522
13.5 練習(xí)題 523
13.5.1 復(fù)習(xí)題 523
13.5.2 練習(xí) 523
13.5.3 項目 524
第14章 字符串 526
14.1 字符串的概念 526
14.1.1 固定長度字符串 526
14.1.2 可變長度字符串 527
14.2 C++字符串 527
14.3 C++字符串輸入/輸出 529
14.3.1 字符串輸出(<<) 529
14.3.2 字符串輸入(>>) 530
14.3.3 賦值操作符 532
14.3.4 C++字符串示例 533
14.4 字符串?dāng)?shù)組 536
14.5 字符串操作函數(shù) 536
14.5.1 字符串長度(length和size) 537
14.5.2 字符串比較 537
14.5.3 連接和附加 539
14.5.4 提取子字符串 541
14.5.5 搜索子字符串 542
14.5.6 搜索字符 543
14.5.7 訪問和修改字符 546
14.5.8 字符串插入 547
14.5.9 替換字符串 548
14.5.10 刪除字符串 549
14.5.11 交換字符串 550
14.5.12 轉(zhuǎn)換為C字符串 551
14.6 程序設(shè)計示例:莫爾斯電碼 551
14.7 C字符串 557
14.7.1 C字符串的基本概念 557
14.7.2 C字符串輸入/輸出 558
14.7.3 C字符串函數(shù)庫 559
14.7.4 把C字符串轉(zhuǎn)換成
C++字符串 562
14.8 C字符串和C++字符串的比較 563
14.9 軟件工程和編程風(fēng)格 563
14.9.1 工資單案例分析 563
14.9.2 程序設(shè)計步驟 564
14.9.3 結(jié)構(gòu)圖設(shè)計 565
14.10 提示和常見的編程錯誤 568
14.11 練習(xí)題 569
14.11.1 復(fù)習(xí)題 569
14.11.2 練習(xí) 570
14.11.3 項目 572
第15章 異常處理 574
15.1 處理錯誤 574
15.1.1 傳統(tǒng)的錯誤處理 574
15.1.2 使用異常處理機(jī)制 575
15.1.3 多重錯誤 578
15.1.4 通用處理程序 579
15.2 異常處理類 580
15.3 異常規(guī)范 583
15.3.1 拋出指定的異常 584
15.3.2 不拋出異常 584
15.3.3 拋出任何異常 585
15.3.4 unexpected異常 585
15.4 類中的異常 585
15.4.1 構(gòu)造函數(shù)中的異常 586
15.4.2 析構(gòu)函數(shù)中的異常 586
15.5 標(biāo)準(zhǔn)異常 587
15.5.1 邏輯錯誤 588
15.5.2 內(nèi)存分配故障 589
15.5.3 I/O(文件)異常 589
15.5.4 將新類添加到標(biāo)準(zhǔn)異常類中 590
15.6 軟件工程和編程風(fēng)格 593
15.6.1 修改程序故障 593
15.6.2 人工調(diào)試 594
15.6.3 測試驅(qū)動程序 596
15.6.4 修改無效輸出 596
15.7 提示和常見的編程錯誤 597
15.8 練習(xí)題 597
15.8.1 復(fù)習(xí)題 597
15.8.2 練習(xí) 598
15.8.3 項目 599
第16章 高級I/O概念 600
16.1 輸入/輸出類 600
16.2 文件狀態(tài) 601
16.2.1 在讀狀態(tài)下打開文件 602
16.2.2 在寫狀態(tài)下打開文件 602
16.2.3 I/O系統(tǒng)標(biāo)志符 603
16.2.4 測試文件是否打開 604
16.2.5 打開和重載構(gòu)造函數(shù) 604
16.3 文本文件和二進(jìn)制文件 605
16.4 文件的標(biāo)準(zhǔn)庫函數(shù) 605
16.4.1 塊輸入/輸出函數(shù) 606
16.4.2 定位函數(shù) 609
16.4.3 塊I/O示例:附加文件 612
16.5 轉(zhuǎn)換文件類型 613
16.5.1 從文本文件創(chuàng)建二進(jìn)制文件 614
16.5.2 從二進(jìn)制文件創(chuàng)建文本文件 616
16.6 字符串流 619
16.6.1 寫入字符串 619
16.6.2 讀取字符串 620
16.7 文件程序示例 621
16.7.1 隨機(jī)文件存取 621
16.7.2 合并文件 623
16.8 軟件工程和編程風(fēng)格 626
16.8.1 更新文件 626
16.8.2 順序文件更新 627
16.8.3 更新程序設(shè)計 627
16.8.4 更新錯誤 628
16.8.5 更新結(jié)構(gòu)圖 629
16.8.6 更新邏輯 629
16.8.7 小結(jié) 630
16.9 提示和常見的編程錯誤 630
16.10 練習(xí)題 631
16.10.1 復(fù)習(xí)題 631
16.10.2 練習(xí) 632
16.10.3 項目 636
第17章 鏈表 638
17.1 鏈表結(jié)構(gòu) 638
17.1.1 節(jié)點 638
17.1.2 鏈表的聲明 639
17.1.3 鏈接列表的順序 640
17.1.4 指向鏈表的指針 640
17.2 基本的鏈表函數(shù) 640
17.2.1 添加節(jié)點 641
17.2.2 刪除節(jié)點 644
17.2.3 搜索鏈表 646
17.2.4 遍歷鏈表 647
17.3 鏈表設(shè)計 649
17.3.1 節(jié)點類 649
17.3.2 列表類 649
17.3.3 類的迭代器 654
17.4 編程示例——鏈表平均值 657
17.4.1 構(gòu)建鏈表 658
17.4.2 打印列表 659
17.4.3 打印列表的平均值 660
17.5 軟件工程和編程風(fēng)格 662
17.5.1 質(zhì)量的定義 662
17.5.2 質(zhì)量要素 662
17.5.3 質(zhì)量周期 664
17.5.4 小結(jié) 665
17.6 提示和常見的編程錯誤 665
17.7 練習(xí)題 666
17.7.1 復(fù)習(xí)題 666
17.7.2 練習(xí) 667
17.7.3 項目 668
附錄A 流程圖編制 671
A.1 輔助符號 671
A.1.1 流程線 672
A.1.2 連接符 672
A.2 主要符號 672
A.2.1 順序語句 672
A.2.2 選擇語句 674
A.2.3 循環(huán)語句 675
附錄B 預(yù)處理器指令 678
B.1 文件包含 678
B.2 宏定義 679
B.2.1 簡單的命令 679
B.2.2 參數(shù)化的宏 680
B.2.3 嵌套的宏 681
B.2.4 宏語句的延續(xù) 682
B.2.5 字符串命令(#) 683
B.2.6 合并命令(# #) 683
B.2.7 取消定義命令 683
B.3 條件編譯 683
B.3.1 if...else命令 684
B.3.2 有條件多向選擇 684
B.3.3 排除代碼 685
B.3.4 如果已定義(ifdef/ifndef)
命令 685
B.4 防止重復(fù)的庫文件包含 686
附錄C 與輸入輸出有關(guān)的類 688
C.1 ios類 688
C.1.1 錯誤狀態(tài)標(biāo)志位 688
C.1.2 ios標(biāo)志位 689
C.1.3 定位標(biāo)志位 689
C.1.4 格式標(biāo)志位 689
C.1.5 格式參數(shù) 690
C.2 ios的派生類 690
C.2.1 輸入流 691
C.2.2 輸出流 691
C.3 istream和ostream的派生類 691
C.3.1 輸入文件流 691
C.3.2 輸入/輸出流 692
C.3.3 輸出文件流 692
C.3.4 I/O字符串流 692
C.4 iostream的派生類 692
C.4.1 文件流 692
C.4.2 字符串流 692
附錄D C語言的I/O 693
D.1 標(biāo)準(zhǔn)庫的輸入/輸出函數(shù) 693
D.1.1 C的文件和流 693
D.1.2 文件表 694
D.1.3 標(biāo)準(zhǔn)的C文件 694
D.1.4 用戶文件 694
D.2 文件打開和關(guān)閉 694
D.2.1 文件打開(fopen) 694
D.2.2 文件模式 695
D.2.3 文件關(guān)閉(fclose) 696
D.3 格式化輸入/輸出函數(shù) 696
D.3.1 輸入格式化 696
D.3.2 輸出格式化 697
D.3.3 格式化字符串 697
D.4 字符輸入/輸出函數(shù) 702
D.4.1 getchar 702
D.4.2 putchar 702
D.4.3 getc和fgetc 703
D.4.4 putc和fputc 703
D.5 字符串輸入/輸出函數(shù) 703
D.5.1 讀字符串(gets/fgets) 703
D.5.2 寫字符串(puts/fputs) 704
D.6 塊輸入/輸出函數(shù) 705
D.6.1 文件讀(fread) 705
D.6.2 文件寫(fwrite) 706
D.7 文件狀態(tài)函數(shù) 706
D.7.1 測試EOF(feof) 706
D.7.2 測試錯誤(ferror) 706
D.7.3 清除錯誤(clearerr) 706
D.8 定位函數(shù) 707
D.8.1 當(dāng)前位置(ftell) 707
D.8.2 設(shè)定位置(fseeD) 707

D.9 C的I/O函數(shù)匯總 708
附錄E 命名空間 709
E.1 背景 709
E.2 使用命名空間的名稱 711
E.2.1 全稱 711
E.2.2 使用命令 711
E.2.3 使用聲明 712
E.2.4 命令和聲明之間的區(qū)別 712
E.3 聲明命名空間 713
E.3.1 聲明 714
E.3.2 擴(kuò)展 714
E.3.3 嵌套 714
E.4 命名空間的類型 716
E.4.1 命名的命名空間 716
E.4.2 全局命名空間 716
E.4.3 未命名的命名空間 716
附錄F 標(biāo)準(zhǔn)模板庫 718
F.1 容器 718
F.1.1 順序容器 718
F.1.2 列表 721
F.1.3 關(guān)聯(lián)容器 722
F.2 容器適配器 728
F.2.1 堆棧 728
F.2.2 隊列 728
F.2.3 優(yōu)先隊列 729
F.3 迭代器 730
F.3.1 輸入迭代器 730
F.3.2 輸出迭代器 730
F.3.3 正向迭代器 731
F.3.4 雙向迭代器 731
F.3.5 隨機(jī)存取迭代器 732
F.3.6 層次關(guān)系 732
F.3.7 迭代器支持的操作符 733
F.4 通用算法 733
F.5 函數(shù)對象 733

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號