出版時間:2009.7 出版社:人民郵電出版社 作者:P. J. Plauger 頁數(shù):473 字數(shù):761000 譯者:盧紅星,徐明亮,霍建同
Tag標簽:無
前言
理論上,在學習完任何編程語言的基本語法后,我們就可以用它來編寫程序以解決任何實際的問題了。但是,熟練地使用語言中已經(jīng)提供的代碼庫有助于我們在編程時極大地減少工作量和避免不必要的錯誤。語言所衍生出的任何能提高生產(chǎn)力的庫,其重要性往往會遠遠超過該語言本身。對這些庫的了解程度,也是評判一位優(yōu)秀程序員的重要標準。因此,學習一門語言并學習其庫的實現(xiàn),這樣才能熟練地駕馭語言工具,了解庫所提供的功能和局限性,進而在特定的應(yīng)用要求下擴展庫——這往往是初學者普遍忽視的一個重要細節(jié)?! 語言更是如此!盡管它及它所附帶的c標準庫中隱藏著太多的晦澀陷阱,但用c語言編寫的程序卻已深入到軟件行業(yè)的各個關(guān)鍵角落,使我們不得不要花大力氣“過分”地鉆研它。已經(jīng)有太多的書關(guān)注了c語言本身及c標準庫應(yīng)如何使用,本書卻獨樹一幟,它將告訴你c標準庫是如何用標準c來實現(xiàn)的。學習c標準庫本身的實現(xiàn),就是學習c語言最好的教材,因為其實現(xiàn)過程將會把使用c語言編寫具有工業(yè)強度的健壯代碼所需的技巧展現(xiàn)得淋漓盡致。 如果想仔細探究C標準庫的實現(xiàn)細節(jié),P.J.Plauger。的這本書將是你最好的選擇①。c標準庫由在15個頭文件中聲明的函數(shù)、類型定義和宏組成,每個頭文件或多或少代表了一定范圍的編程功能。有人說,標準庫可以分為3組,如何正確和熟練地使用它們,可以相應(yīng)地區(qū)分出3、種層次的C程序員: 口合格程序員,、、、; 口熟練程序員,、、、; 口優(yōu)秀程序員,、、、、、、?! ∪绻惴磸?fù)研讀本書,并能將本書所提供的9000余行關(guān)鍵實現(xiàn)代碼中所蘊藏的C語言精髓熟稔地應(yīng)用到你正要或?qū)⒁獜氖碌膶嶋H開發(fā)中去,那么,毫無疑問,你已完全超越了上面“優(yōu)秀程序員”的標準,成為“超優(yōu)秀程序員”!
內(nèi)容概要
本書集中討論了C標準庫,全面介紹了ANSI/ISO C語言標準的所有庫函數(shù)。書中通過引用ISO C標準的相關(guān)部分,詳細講解了每一個庫函數(shù)的使用方法,并通過示例描述了其實現(xiàn)細節(jié),且給出了實現(xiàn)和測試這些函數(shù)的完整代碼。此外,每章結(jié)尾附有不同難度的習題,幫助讀者鞏固和提高。通過此書,讀者將會更好地使用C標準庫,并學會如何設(shè)計和實現(xiàn)庫?! ”緯Y(jié)構(gòu)清晰,內(nèi)容權(quán)威,闡述精辟,對于各層次C程序員和相關(guān)專業(yè)高校師生都是一本優(yōu)秀的參考書。
作者簡介
P.J.Plauger,世界著名的軟件技術(shù)專家,曾任ISO C標準委員會主席,C/C++Users Journal主編,現(xiàn)任ISO C++標準委員會主席。他是C/C++標準庫開發(fā)領(lǐng)域的大師。所開發(fā)的Dinkumware標準庫應(yīng)用廣泛。
書籍目錄
第0章 簡介 0.1 背景知識 0.2 C標準的內(nèi)容 0.3 庫的使用 0.4 庫的實現(xiàn) 0.5 庫的測試 0.6 參考文獻 0.7 習題 第1章 assert.h 1.1 背景知識 1.2 C標準的內(nèi)容 1.3 assert.h的使用 1.4 assert.h的實現(xiàn) 1.5 assert.h的測試 1.6 參考文獻 1.7 習題 第2章 ctype.h 2.1 背景知識 2.2 C標準的內(nèi)容 2.3 ctype.h的使用 2.4 ctype.h的實現(xiàn) 2.5 ctype.h的測試 2.6 參考文獻 2.7 習題 第3章 errno.h 3.1 背景知識 3.2 C標準的內(nèi)容 3.3 errno.h的使用 3.4 errno.h的實現(xiàn) 3.5 errno.h的測試 3.6 參考文獻 3.7 習題 第4章 float.h 4.1 背景知識 4.2 C標準的內(nèi)容 4.3 float.h的使用 4.4 float.h的實現(xiàn) 4.5 float.h的測試 4.6 參考文獻 4.7 習題 第5章 limits.h 5.1 背景知識 5.2 C標準的內(nèi)容 5.3 limits.h的使用 5.4 limits.h的實現(xiàn) 5.5 limits.h的測試 5.6 參考文獻 5.7 習題 第6章 locale.h 6.1 背景知識 6.2 C標準的內(nèi)容 6.3 locale.h的使用 6.4 locale.h的實現(xiàn) 6.5 locale.h的測試 6.6 參考文獻 6.7 習題 第7章 math.h 7.1 背景知識 7.2 C標準的內(nèi)容 7.3 math.h的使用 7.4 math.h的實現(xiàn) 7.5 math.h的測試 7.6 參考文獻 7.7 習題 第8章 setjmp.h 第9章 signal.h 第10章 stdarg.h 第11章 stddef.h 第12章 stdio.h 第13章 stdlib.h第14章 string.h 第15章 time.h 附錄A 接口附錄B 名字 附錄C 術(shù)語
章節(jié)摘錄
編寫出好的數(shù)學函數(shù)是一件很難的事。現(xiàn)在的一個普遍現(xiàn)象是有些程序設(shè)計語言的實現(xiàn)提供的數(shù)學函數(shù)存在嚴重的缺陷。它們可能會對具有明確定義的函數(shù)值的參數(shù)產(chǎn)生中間值溢出,或者丟失很多位的有效數(shù)字,某些情況下還會產(chǎn)生錯誤結(jié)果?! ‰m然實現(xiàn)人員有充足的時間來研究這些問題,但仍然有那么多的缺陷,這一點讓人奇怪。計算機最早就用于解決各種工程或者數(shù)學難題,事實上,最早的庫幾乎完全由計算常用數(shù)學函數(shù)的函數(shù)組成。20世紀50年代出現(xiàn)的FORTRAN,就是以它的功能FORmula TRANslation(公式轉(zhuǎn)換)的縮寫來命名的,那些公式是由很多數(shù)學函數(shù)組成的?! ≡谶^去的幾十年中,實現(xiàn)人員變得越來越老練。IEEE754浮點數(shù)標準對浮點算術(shù)的安全和一致是一個重要的里程碑。(參考第4章中對浮點數(shù)表示和IEEE754標準的討論。)但是從另一個角度來說,IEEE754又加重了實現(xiàn)人員的負擔。因為它引入了漸進下溢,對無窮大和非數(shù)的編碼,不同的精度要求不同大小的指數(shù)等復(fù)雜的東西。所以很多實現(xiàn)通常只支持IEEE 754標準的一部分,而不是全部?! ∥一ㄔ诰帉懞驼{(diào)試中聲明的函數(shù)的時間和這個庫中其他所有的函數(shù)加起來的時間差不多,這的確讓我有點吃驚。在過去的二十多年的時間中,我對每一個數(shù)學庫函數(shù)都至少預(yù)先編寫過3遍所以你可能會認為我應(yīng)該有足夠的時間來避免錯誤的發(fā)生,我也曾這樣認為,但事實并非如此。
編輯推薦
C標準庫“圣經(jīng)”,提供完整源代碼,全面深入闡述庫函數(shù)的實現(xiàn)與運用。C程序員必備參考書?! ”緯怯墒澜缂塁語言專家編寫的C標準庫經(jīng)典著作。英文版已經(jīng)重印十多次,影響了幾代程序員?! ”緯Y(jié)合C標準的相關(guān)部分,精辟地講述了每一個庫函數(shù)的使用方法和實現(xiàn)細節(jié),這正是一個真正的C程序員所必須掌握的。更重要的是,書中給出了實現(xiàn)和測試這些函數(shù)的完整源代碼??梢宰屇愀钊氲貙W習C語言。不僅如此,本書還討論了一些即使是最有經(jīng)驗的C程序員通常也不熟悉的知識,比如國際化和獨立于區(qū)域設(shè)置的程序的編寫、與構(gòu)建庫相關(guān)的概念和設(shè)計思想?! ∽髡吆喗椋篜.J.Plauger,世界著名的軟件技術(shù)專家,曾任ISO C標準委員會主席,C/C++Users Journal主編,現(xiàn)任ISO C++標準委員會主席。他是C/C++標準庫開發(fā)領(lǐng)域的大師。所開發(fā)的Dinkumware標準庫應(yīng)用廣泛。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載