前言
第一部分 基礎知識
第一章 什么是C
C 簡史
C 的組織結構
如何學習C
第二章 編程基礎
程序從概念到執(zhí)行
創(chuàng)建實際的程序
在Unix中獲得幫助
在IDE中獲得幫助
編程練習
第三章 風格
注釋
C 代碼
命名風格
編寫代碼的信仰
縮排和代碼格式
清晰
簡單
一致性和組織結構
進一步閱讀
小結
第四章 基本聲明和表達式
基本的程序結構
簡單表達式
std::cout輸出對象
變量和存儲
變量聲明
整數
賦值語句
浮點數
浮點除與整數除
字符
寬字符
布爾類型
編程練習
章節(jié)問題答案
第五章 數組. 限定符和讀數據
數組
字符串
讀數據
初始化變量
多維數組
C風格字符串
整數的類型
浮點數的類型
常量和引用聲明
限定符
十六進制常量和八進制常量
用于執(zhí)行快捷方式的操作符
副作用
編程練習
章節(jié)問題答案
第六章 判斷和控制語句
if語句
else語句
如何不使用std::strcmp
循環(huán)語句
while語句
break語句
continue語句
賦值在任何地方的副作用
編程練習
章節(jié)問題答案
第七章 編程過程
設置你自己的工作區(qū)域
規(guī)范
代碼設計
原型
Makefile
測試
調試
維護
修訂
電子考古學
標記程序
使用調試器
使用文本編輯器作為瀏覽器
添加注釋
編程練習
第二部分 簡單編程
第八章 更多控制語句
for語句
switch語句
switch. break和continue
編程練習
章節(jié)問題答案
第九章 變量作用域和函數
作用域和存儲類別
名稱空間
函數
參數類型的總結
遞歸
結構化的編程基礎
實際編程
編程練習
章節(jié)問題答案
第十章 C 預處理器
#define語句
條件編譯
#include文件
參數化的宏
高級特性
小結
編程練習
章節(jié)問題答案
第十一章 位操作
位操作符
與操作符(&)
按位或(|)
按位異或(^)
按位非操作符(~)
位左移和位右移操作符(<<, >>)
設置. 清除和測試位
位映像圖
編程練習
章節(jié)問題答案
第三部分 高級的類型和類
第十二章 高級類型
結構
聯合
typedef
枚舉類型
位成員或緊縮結構
結構數組
編程練習
章節(jié)問題答案
第十三章 簡單類
棧
改進后的棧
類的使用
構造函數和析構函數簡介
自動生成的成員函數
快捷方式
風格
結構和類
編程練習
第十四章 類的其他知識
friends
constant函數
常量成員
靜態(tài)成員變量
靜態(tài)成員函數
static的含義
編程練習
第十五章 簡單指針
const指針
指針和輸出
指針和數組
reinterpret_cast
指針和結構
命令行參數
編程練習
章節(jié)問題答案
第四部分 高級編程概念
第十六章 文件輸入/輸出
C
文件I/O
轉換例程
二進制文件和ASCII文件
行結束難題
二進制I/O
緩沖問題
非緩沖I/O
設計文件格式
C風格 I/O 例程
C風格的轉換例程
C風格二進制I/O
C風格I/O與C 風格I/O
編程練習
章節(jié)問題答案
第十七章 調試和優(yōu)化
代碼評審
順序調試
獲得輸出結果
交互調試器
調試二分查找
交互調試技巧
運行時錯誤
優(yōu)化
如何優(yōu)化
案例研究:內聯函數和普通函數
案例研究:優(yōu)化著色算法
編程練習
章節(jié)問題答案
第十八章 操作符重載
創(chuàng)建簡單的定點類
操作符函數
操作符成員函數
缺點
定點類的完整定義
編程練習
章節(jié)問題答案
第十九章 浮點數
浮點格式
浮點加/減
乘法和除法
上溢和下溢
舍入誤差
精確度
最小化舍入誤差
確定精確度
精度和速度
冪級數
編程練習
第二十章 高級指針
指針. 結構和類
delete操作符
鏈表
有序鏈表
雙向鏈表
樹
輸出一個樹
程序的其他部分
Chess程序的數據結構
編程練習
章節(jié)問題答案
第二十一章 高級類
派生類
虛函數
虛類
派生類中的函數隱藏
派生類中的構造函數和析構函數
dynamic_cast操作符
小結
編程練習
章節(jié)問題答案
第五部分 其他語言特性
第二十二章 異常
在棧類中添加異常
異常和assert
編程練習
第二十三章 模塊化編程
模塊
public和private
extern存儲類
頭文件
模塊體
使用無限數組的一個程序
多個文件的Makefile
使用無限數組
將一個任務劃分成多個模塊
模塊設計指南
編程練習
第二十四章 模板
什么是模板?
模板:比較困難的方式
模板:C 采用的方式
函數特殊化
類模板
類特殊化
實現細節(jié)
高級功能
小結
編程練習
第二十五章 標準模板庫
STL基礎
類List —— 一個學生集合
使用STL列表創(chuàng)建一個等待列表
將成績存儲在STL映射中
全部輸出
實際使用STL需要考慮的因素
獲取更多信息
編程練習
第二十六章 程序設計
設計目標
設計要素
設計準則
編碼
對象
實際設計技巧
小結
第二十七章 完整的開發(fā)過程
需求
代碼設計
編碼
功能說明
測試
修訂版
最終警告
程序文件
編程練習
第二十八章 從C到C
K&R風格的函數
struct
malloc 和 free
將結構轉變?yōu)轭?br />setjmp 和 longjmp
混合使用C和C 代碼
小結
編程練習
第二十九章 C 遺忘的角落
do/while
goto
: 結構
逗號操作符
重載 操作符
指向成員的指針
asm語句
限定符mutable
運行期間類型判定
通配符
章節(jié)問題答案
第三十章 編程格言
一般
設計
聲明
switch語句
預處理器
風格
編譯
C 程序員十誡
最后注意事項
章節(jié)問題答案
第六部分 附錄
附錄一 ASCII表
附錄二 范圍
附錄三 操作符優(yōu)先規(guī)則
附錄四 使用冪級數計算正弦值
附錄五 資源
索引