c程序設計語言第二版
『壹』 C程序設計語言第二版和第二版新版有什麼區別(The C Proguamming Language)
c語言熱了五六十多年,基本上沒什麼變化。依然強悍,新書與舊書區別就是,新書修正了舊書一些錯誤比如錯別字,還會更新一些內容,大體上沒啥變化。
『貳』 c語言程序設計第二版是什麼垃圾
c語言程序設計第二版是什麼垃圾
譚浩強《C語言程序設計(第二版)》的前50頁中的錯誤分析
譚書也算是一本奇書了,據說已經發行了300多萬冊。這本書真的那麼好嗎?師長早有教誨,因此本人從來沒有好好讀過譚書。近日遇周圍人盛贊譚書,非辯論不可。雖本人不願應戰,但也不得已將譚書找來翻翻。隨便翻了一段,就發現錯誤百出,在此將其中最前面的一些整理出來,提出與國內廣大
行家和新入道者討論,望行家們提出批評,供新入道者參考。
書中程序的不規范性、不良的格式和低劣的編程都不在這里深究了。實在是太多,要深究、分析和改
正起來,必須寫一本數倍於譚書的大作,本人實在沒這個時間和精力。水平高的人有的是,歡迎寫幾
個續篇。歡迎轉載到其他BBS,以期引起討論。對本人所言的不實之處歡迎批評。
註:下面將作者尊稱為「譚先生」。負的行號表示一頁里倒數的行數。
--------------------------------------------------------------
先看目錄,是不是有個地放有:
"淡函數………………………………",什麼東西,這算是排版錯誤,不理會!
P1行1:…,它適於作為系統描述語言,…
這開宗明義的第一句話就說明譚先生對於計算機科
學的術語不甚了了。什麼叫「系統描述」,什麼叫「系統程序設計」?人們都都說C是一種「系統程
序設計語言」,而「系統描述語言」則完全是另一種東西。想必譚先生對它們之間的差異和關系都不
清楚。在這種情況下就來下斷言,一上馬就露了怯。
P2表格:if (e) S;
這個錯誤說明譚先生對C語句基本結構也不清楚。在C語言里,分號是普通語句的結束符號,是語句
的一部分。如果譚先生的S表示語句,那麼後隨的分號是必需的嗎?如果譚先生的S表示語句中分號
前面的一部分,那麼又如何理解可以放在這里的{ ... } 順序結構呢?它算語句嗎?可以放在這里
嗎?要加分號嗎?無論怎麼看,譚先生都難以自圓其說!
P3行4:C語言是理想的結構化語言,…
不知譚先生的這個論斷由何而來。C的創造者肯定不會說這句話,即使是C語言最狂熱的崇拜者恐怕
也不敢這樣說。幸虧譚先生生在中國,其書只在中國出版,否則恐怕他就不會好過了,不知有多少人
要找譚先生理論個究竟。
P3行7-8:例如整型量與字元型數據以及邏輯型數據可以通用。
此句子表現出的語文水平就不深究了。要問譚先生的簡單問題是,「量」與「數據」是什麼關系?再
一個問題是,C語言什麼時候增加了「邏輯型數據」?
P3行14:C語言允許直接訪問物理地址。
不知這個論斷從何而來。至少無法從C語言參考手冊中找到根據,看來是譚先生為C語言增加的特殊功能。
P4程序:This is a c program.
通觀世界上所有有關C語言的重要著作,C語言的名字「C」都是用大寫表示。這里好象譚先生表示了
對C的不肖,與前面大相徑庭,不知何故。P5行9:注釋可以出現在程序中的任何位置。
這里又修改了C語言的規則。這里給譚先生提個小問題:「請找出在C程序里不能出現注釋的位置(
或說,加了注釋就會改變程序意義的位置)。」請10秒鍾內回答。
P5行12:「%d」表示「十進制整數類型」。
寫程序有問題呀!怎麼一遇到具體問題,寫出的解釋到處都是毛病。「%d」根本就不表示任何類型,
它只是對函數printf提出一個轉換要求。如果一個初學者產生這種理解偏差還有情可言,像譚先生這
樣的「大師」級人物也犯此等低級錯誤,實在是不可原諒。
P5行-8:scanf和printf都是C語言提供的標准輸入輸出函數…
按本人理解,C語言本身不提供任何有關輸入輸出的功能,也不提供任何標准函數。只是ANSI C建議
了一個標准函數庫。至少C參考手冊上是這么說的,在譚書中其他部分也這么說。概念不太清楚就容
易漏馬腳。
P6行13:可以說C是函數式的語言。
太荒唐了,完全是望文生義。譚先生的計算機科學技術知識水平可見一斑。函數式語言是計算機科學
領域中有明確意義的術語。再者說,即使不理解,也應該盡量迴避一下大家都知道的東西,這下不就
漏了底。說C是函數式語言,就像說譚先生是「錯話大師」一樣(畢竟他也說了許多對的話嘛!)。
看來譚先生需要補一補計算機科學的基礎知識,聽說譚先生是清華大學畢業,那裡的計算機系也還不
錯嘛。
『叄』 求《C語言程序設計現代方法第二版》全文免費下載百度網盤資源,謝謝~
《C語言程序設計現代方法第二版》網路網盤pdf最新全集下載:
鏈接:https://pan..com/s/1ZxPIF7PSVBGWtDl8h_kjNA
簡介:時至今日,C語言仍然是計算機領域的通用語言之一,但今天的C語言已經和初的時候大不相同了。本書主要的一個目的就是通過一種「現代方法」來介紹C語言,書中強調標准C,強調軟體工程,不再強調「手工優化」。這一版中緊密結合了C99標准,並與C89標准進行對照,補充了C99中的全新特性。本書分為C語言的基礎特性、C語言的高級特性、C語言標准庫和參考資料4個部分。每章末尾都有一個「問與答」小節給出一系列與該章內容相關的問題及答案,此外還包含適量的習題。
《C語言程序設計:現代方法(第2版)》是為大學本科階段的C語言課程編寫的教材,同時也非常適合作為其他課程的輔助用書。
『肆』 《C程序設計語言第2版·新版》pdf下載在線閱讀全文,求百度網盤雲資源
《C程序設計語言(第2版·新版)》([美] Brian W. Kernighan)電子書網盤下載免費在線閱讀
鏈接: https://pan..com/s/1txJqYzmjYS-BSw43eLWrnQ
書名:C程序設計語言(第2版·新版)
作者:[美] Brian W. Kernighan
譯者:徐寶文
豆瓣評分:9.4
出版社:機械工業出版社
出版年份:2004-1
頁數:258
內容簡介:
在計算機發展的歷史上,沒有哪一種程序設計語言像C語言這樣應用廣泛。本書作者是C語言的設計者之一Dennis M. Ritchie和著名計算機科學家Brian W. Kernighan合著的一本介紹C語言的權威經典著作。我們現在見到的大量論述C語言程序設計的教材和專著均以此書為藍本。
原著第1版中介紹的C語言成為後來廣泛使用的C語言版本——標准C的基礎。人們熟知的「hello,World"程序就是由本書首次引入的,現在,這一程序已經成為眾多程序設計語言入門的第一課。原著第2版根據1987年制定的ANSIC標准做了適當的修訂.引入了最新的語言形式,並增加了新的示例,通過簡潔的描述、典型的示例,作者全面、系統、准確地講述了C語言的各個特性以及程序設計的基本方法。
對於計算機從業人員來說,本書是一本必讀的程序設計語言方面的參考書。
作者簡介:
Brian W. Kernighan,貝爾實驗室計算科學研究中心高級研究人員,著名的計算機科學家。參加了UNIX系統、C語言、AWK語言和許多其他系統的開發,同時出版了許多在計算機領域具有影響的著作,如《The Elements of Programming Style》《The Practice of Programming》《The UNIX Programming Environment》《The AWK Language》《Software Tools》等。
Dennis M. Ritchie,1967年加入貝爾實驗室。他和 Ken L. Thompson 兩人共同設計並實現的C語言改變了程序設計語言發展的軌跡,是程序設計語言發展過程中的一個重要里程碑。與此同時,他們還設計並實現了UNIX操作系統。正是由於這兩項巨大貢獻,Dennis M. Ritchie 於1983年獲得了計算機界的最高獎——圖靈獎。此外,他還獲得了ACM、IEEE、貝爾實驗室等授予的多種獎項.。
『伍』 求《c程序設計語言第二版》全文免費下載百度網盤資源,謝謝~
《c程序設計語言第二版》網路網盤pdf最新全集下載:
鏈接: https://pan..com/s/1ye0J-Z1SePDTizMZxkPRIA
簡介:全面、系統地講述了C語言的各個特性及程序設計的基本方法。
『陸』 《C語言程序設計》譚浩強主編 第二版跟第三版的有什麼區別
第二版里邊主要是採用TC2.0
第三版里邊主要是採用TC3.0
其次,第二版中有介紹C++
第三版中將C++獨立出去了
其他基本沒有區別
『柒』 推薦:Dennis M. Ritchie《C程序設計語言第二版》PDF
推薦想學C語言的看看《C程序設計語言》第二版。
《C程序設計語言》原著即為C語言的設計者DennisM.Ritchie和著名的計算機科學家BrianW.Kernighan合著的一本介紹C語言的權威經典著作。我們現在見到的大量論述C語言程序設計的教材和專著均以此書為藍本。原著第1版中介紹的C語言成為後來廣泛使用的C語言版本——標准C的基礎。人們熟知的「Hello,World」程序就是由《C程序設計語言》首次引入的,現在,這一程序已經成為所有程序設計語言入門的第一課。原著第2版根據1987年制定的ANSIC標准做了適當的修訂.引入了最新的語言形式,並增加了新的示例,通過簡潔的描述、典型的示例,作者全面、系統、准確地講述了C語言的各個特性以及程序設計的基本方法。對於計算機從業人員來說,《C程序設計語言》是一本必讀的程序設計語言方面的參考書。
推薦學習:《C程序設計語言第二版》PDF,261頁,帶目錄,文字可以復制等。
鏈接:https://pan..com/s/1g8ehO9M_RralW1RzzDff-w
『捌』 C語言程序設計 第二版 課後答案 (張磊 馮偉昌...
有兩種方式:
第一種:選「文件」,然後選「C/C++ Source File」。
第二種:選「工程」,然後選「Win32 Console Application」,完成後,然後再按第一種方式建立文件。
『玖』 嵌入式系統自學
嵌入式系統軟體工程 方法實用技術及應用,免費下載
鏈接:https://pan..com/s/10No3IypKyLg01bV4T9b22w
《嵌入式系統軟體工程:基礎知識、方法和應用》系統地闡述嵌入式系統軟體工程所涉及的過程、方法、內容,以及在典型工業領域中的應用。全書內容分為兩大部分:第一部分介紹嵌入式系統軟體工程方法論,主要包括嵌入式軟體的開發過程(需求工程、軟體和系統體系結構、編程和測試等內容),開發和測試中所採用的標准,與安全性相關的軟體系統的准入,以及嵌入式軟體所涉及的法律問題:第二部分介紹嵌入式系統軟體在汽車領域、軌道交通領域、航天領域、醫療器械、工業自動化、通信系統中的應用,在每個應用領域重點介紹具體應用領域的一些特定需求、技術和限制條件,以及它們對於嵌入式系統軟體開發過程的影響。
『拾』 請問C語言程序設計第二版和第三版有什麼區別
事實上,並沒有多大的區別~~
對於一個函數,返回類型 fun(參數列表),在C語言中,如果返回類型為整型的話,可以省略不寫返回類型。即為第二版的形式,對於第三版的形式,是把main函數當做沒有返回類型,事實上,以上2種寫法都不是很好,main()函數是有返回值,返回調用main()的狀態,0為調用main()成功,其他值為失敗,(具體如果學習到UNIX或者Linux下的系統編程時就會很深刻的理解到了。)一個C語言的真正形式應該是:
int main(int argc,char * argv[])
{
*** 其中argc,是調用者的參數個數,argv[]是各個想對應的參數值,因此
main也可以寫成:
return 0;
}
int main()
{
******
return 0; 由於return 語句在具體運行中,調用了庫函數exit(){或者說系統調
用_Exit()或者_exit()}
}
因此main()又可以寫成 int main(){ exit(0);}
但是一般寫成 int main(){ return 0;},以上涉及到很多main()運行原理之類的知識,可能在學習LINUX中的系統編程才能深刻理解,這里說明知識為了讓你更深刻理解main()的本質而已。
對於工具而言,用VC比使用turbo C好些,但是如果想真正的學習C語言,我覺得在UNIX或者LINUX環境下編程和編譯,更妙,因為C語言是為了開發UNIX系統而被發明的。
如果對於不準備把C語言或者編程當做以後謀生的一部分,那麼對於main函數,只要理解到
int main(){return 0;}即可。其它涉及的東西可以暫時不去考慮。