出版時間:2008-2 出版社:人民郵電出版社 作者:凱尼格 頁數(shù):172 譯者:高巍
Tag標(biāo)簽:無
內(nèi)容概要
作者以自己1985年在Bell實驗室時發(fā)表的一篇論文為基礎(chǔ),結(jié)合自己的工作經(jīng)驗擴展成為這本對C程序員具有珍貴價值的經(jīng)典著作。寫作本書的出發(fā)點不是要批判C語言,而是要幫助C程序員繞過編程過程中的陷阱和障礙。 全書分為8章,分別從詞法分析、語法語義、連接、庫函數(shù)、預(yù)處理器、可移植性缺陷等幾個方面分析了C編程中可能遇到的問題。最后,作者用一章的篇幅給出了若干具有實用價值的建議。 本書適合有一定經(jīng)驗的C程序員閱讀學(xué)習(xí),即便你是C編程高手,本書也應(yīng)該成為你的案頭必備書籍。
作者簡介
Andrew Koenig AT&T大規(guī)模程序研發(fā)部(莉貝爾實驗室)成員。他從1 986年開始從事C語言的研究,1977年加入貝爾實驗室。在1989年ISO/ANSI C++委員會成立時,他就加入了該委員會,并一直擔(dān)任項目編輯;他還是《Rumirlatio rls on C++》(C++沉思錄)、《CTraps and Pitfalls》的作者。
書籍目錄
第0章 導(dǎo)讀第1章 詞法“陷阱” 1.1 =不同于== 1.2 &和|不同于&&和|| 1.3 詞法分析中的“貪心法” 1.4 整型常量 1.5 字符與字符串第2章 語法“陷阱” 2.1 理解函數(shù)聲明 2.2 運算符的優(yōu)先級問題 2.3 注意作為語句結(jié)束標(biāo)志的分號 2.4 switch語句 2.5 函數(shù)調(diào)用 2.6 “懸掛”else引發(fā)的問題第3章 語義“陷阱” 3.1 指針與數(shù)組 3.2 非數(shù)組的指針 3.3 作為參數(shù)的數(shù)組聲明 3.4 避免“舉隅法” 3.5 空指針并非空字符串 3.6 邊界計算與不對稱邊界 3.7 求值順序 3.8 運算符&&、||和! 3.9 整數(shù)溢出 3.10 為函數(shù)main提供返回值第4章 連接 4.1 什么是連接器 4.2 聲明與定義 4.3 命名沖突與static修飾符 4.4 形參、實參與返回值 4.5 檢查外部類型 4.6 頭文件第5章 庫函數(shù) 5.1 返回整數(shù)的getchar函數(shù) 5.2 更新順序文件 5.3 緩沖輸出與內(nèi)存分配 5.4 使用ernlo檢測錯誤 5.5 庫函數(shù)signal第6章 預(yù)處理器 6.1 不能忽視宏定義中的空格 6.2 宏并不是函數(shù) 6.3 宏并不是語句 6.4 宏并不是類型定義第7章 可移植性缺陷 7.1 應(yīng)對C語言標(biāo)準(zhǔn)變更 7.2 標(biāo)識符名稱的限制 7.3 整數(shù)的大小 7.4 字符是有符號整數(shù)還是無符號整數(shù) 7.5 移位運算符 7.6 內(nèi)存位置0 7.7 除法運算時發(fā)生的截斷 7.8 隨機數(shù)的大小 7.9 大小寫轉(zhuǎn)換 7.10 首先釋放,然后重新分配 7.11 可移植性問題的一個例子第8章 建議與答案 8.1 建議 8.2 答案附錄A:PRINTF,VARARGS與STDARG附錄B:Koenig和Moo夫婦訪談
編輯推薦
《C陷阱與缺陷》適合有一定經(jīng)驗的C程序員閱讀學(xué)習(xí),即便你是C編程高手,《C陷阱與缺陷》也應(yīng)該成為你的案頭必備書籍。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載