資料介紹
最近面試了一些人,包括應(yīng)屆本科、碩士和工作多年的程序員,在問到C 語言相關(guān)的問題的時候,總是沒幾個人能完全答上我的問題。甚至一些工作多年,簡歷上寫著“最得意的語言是C 語言”,“對C 有很深的研究”,“精通C 語言”的人也答不完全我的問題,甚至有個別人我問的問題一個都答不上。于是我就想起了我去年閑的使用寫的這本小冊子。
我遇到過很多程序員和計(jì)算機(jī)系畢業(yè)的學(xué)生,也給很多程序員和計(jì)算機(jī)系畢業(yè)的學(xué)生講解過《高級C 語言程序設(shè)計(jì)》。每期班開課前,我總會問學(xué)生:你感覺C 語言學(xué)得怎么樣?難嗎?指針明白嗎?數(shù)組呢?內(nèi)存管理呢?往往學(xué)生回答說:感覺還可以,C 語言不難,指針很明白,數(shù)組很簡單,內(nèi)存管理也不難。一般我會再問一個問題:通過這個班的學(xué)習(xí),你想達(dá)到什么程度?很多學(xué)生回答:精通C 語言。我告訴他們:我很無奈,也很無語。因?yàn)槲彝耆诤鸵蝗簶I(yè)余者或者是C 語言愛好者在對話。你們大學(xué)的計(jì)算機(jī)教育根本就是在浪費(fèi)你們的時間,念了幾年大學(xué),連C 語言的門都沒摸著?,F(xiàn)在大多數(shù)學(xué)校計(jì)算機(jī)系都開了C、C++、Java、C#等等語言,好像什么都學(xué)了,但是什么都不會,更可悲的是有些大學(xué)居然取消了C 語言課程,認(rèn)為其過時了。我個人的觀點(diǎn)是“十鳥在林,不如一鳥在手”,真正把C 語言整明白了再學(xué)別的語言也很簡單,如果C 語言都沒整明白,別的語言學(xué)得再好也是花架子,因?yàn)槟悴⒉涣私獾讓邮窃趺椿厥?。?dāng)然我也從來不認(rèn)為一個沒學(xué)過匯編的人能真正掌握C 語言的真諦。我個人一直認(rèn)為,普通人用C 語言在3 年之下,一般來說,還沒掌握C 語言;5 年之下,一般來說還沒熟悉C 語言;10 年之下,談不上精通。所以,我告訴我的學(xué)生:聽完我的課,遠(yuǎn)達(dá)不到精通的目標(biāo),熟悉也達(dá)不到,掌握也達(dá)不到。那能達(dá)到什么目標(biāo)?-----領(lǐng)你們進(jìn)入C 語言的大門。入門之后的造化如何在于你們自己。不過我可以告訴你們一條不是捷徑的捷徑:把一個鍵盤的F10 或F11 按壞,當(dāng)然不能是垃圾鍵盤。
往往講到這里,學(xué)生眼里總是透露著疑慮。C 語言有這么難嗎?我的回答是:不難。但你就是用不明白。學(xué)生說:以前大學(xué)老師講C 語言,我學(xué)得很好。老師講的都能聽懂,考試也很好。平時練習(xí)感覺自己還不錯,工作也很輕松找到了。我告訴學(xué)生:聽明白,看明白不代表你懂了,你懂了不代表你會用了,你會用了不代表你能用明白,你能用明白不代表你真正懂了!什么時候表明你真正懂了呢?你站在我這來,把問題給下面的同學(xué)講明白,學(xué)生都聽明白了,說明你真正懂了。否則,你就沒真正懂,這是檢驗(yàn)懂沒懂的唯一標(biāo)準(zhǔn)。冰山大家都沒見過,但總聽過或是電影里看過吧?如果你連《泰坦尼克》都沒看過,那你也算個人物(開個玩笑)。《泰坦尼克》里的冰山給泰坦尼克造成了巨大的損失。你們都是理工科的,應(yīng)該明白冰山在水面上的部分只是總個冰山的1/8。我現(xiàn)在就告訴你們,C 語言就是這座冰山。你們現(xiàn)在僅僅是摸到了水面上的部分,甚至根本不知道水面下的部分。我希望通過我的講解,讓你們摸到水面下的部分,讓你們知道C 語言到底是什么樣子。
從現(xiàn)在開始,除非在特殊情況下,不允許用printf 這個函數(shù)。為什么呢?很多學(xué)生寫完代碼,直接用printf 打印出來,發(fā)現(xiàn)結(jié)果不對。然后就舉手問我:老師,我的結(jié)果為什么不對???連調(diào)試的意識都沒有!大多數(shù)學(xué)生根本就不會調(diào)試,不會看變量的值,內(nèi)存的值。只知道printf 出來結(jié)果不對,卻不知道為什么不對,怎么解決。這種情況還算好的。往往很多時候printf 出來的結(jié)果是對的,然后呢,學(xué)生也理所當(dāng)然的認(rèn)為程序沒有問題。是這樣嗎?往往不是,往后看,你能看到例子的。永遠(yuǎn)給我記住一點(diǎn):結(jié)果對,并不代表程序真正沒有問題。所以,以后盡量不要用printf 函數(shù),要去看變量的值,內(nèi)存的值。當(dāng)然,在我們目前的編譯器里,變量的值,內(nèi)存的值對了就代表你程序沒問題嗎?也不是,往后,你也會看到例子的。
這個時候呢,學(xué)生往往會莫名其妙。這個老師有問題吧。大學(xué)里我們老師都教我們怎么用printf,告訴我們要經(jīng)常用printf。這也恰恰是大學(xué)教育失敗的地方之一。很多大學(xué)老師根本就沒真正用C 語言寫過幾行代碼,更別說教學(xué)生調(diào)試代碼了。不調(diào)試代碼,不按F10 或F11,水平永遠(yuǎn)也無法提上來,所以,要想學(xué)好一門編程語言,最好的辦法就是多調(diào)試。你去一個軟件公司轉(zhuǎn)轉(zhuǎn),去看人家的鍵盤,如果發(fā)現(xiàn)鍵盤上的F10 或F11 錚亮錚亮,毫無疑問,此機(jī)的主人曾經(jīng)或現(xiàn)在是開發(fā)人員(這里僅指寫代碼的,不上升到架構(gòu)設(shè)計(jì)類的開發(fā)人員),否則,必是非開發(fā)人員。

- C語言教程之如何進(jìn)行最簡單的C程序設(shè)計(jì)實(shí)現(xiàn)程序說明 2次下載
- C語言教程之數(shù)組講解的詳細(xì)資料免費(fèi)下載 19次下載
- C語言教程之C語言中級培訓(xùn)教程—預(yù)處理電子課件免費(fèi)下載 0次下載
- 《C語言深度解剖:解開程序員面試筆試的秘密》電子教材資料免費(fèi)下載 0次下載
- C語言教程之設(shè)置系統(tǒng)日期 0次下載
- C語言教程之相對的最小整數(shù) 0次下載
- C語言教程之顯示程序運(yùn)行時間 0次下載
- C語言教程之字母檢測 0次下載
- C語言教程之彩球問題 0次下載
- C語言教程之階梯問題 0次下載
- C語言教程之第一個C語言程序 0次下載
- C語言教程之一個完整的C語言程序 0次下載
- C語言深度解剖_解開程序員面試筆試的秘密-陳正沖編著 0次下載
- 解開程序員面試筆試的秘密-C語言深度解剖 陳正沖 編著 0次下載
- C語言深度解剖
- 技術(shù)干貨驛站 ▏深入理解C語言:掌握程序結(jié)構(gòu)知識 1484次閱讀
- 怎么寫出效率高、思路清晰的C語言程序? 605次閱讀
- 七種編程語言的學(xué)習(xí)曲線 1022次閱讀
- 分享10道有趣的嵌入式C語言面試題及答案 2819次閱讀
- 如何把C++程序改寫成C語言 3392次閱讀
- C語言與C++面試知識點(diǎn)總結(jié) 1881次閱讀
- 為什么說C語言程序運(yùn)行時要比其他語言編寫的程序快得多 2252次閱讀
- 使用51單片機(jī)讀寫AT29C040的C語言程序免費(fèi)下載 4812次閱讀
- C語言的簡介和特點(diǎn)說明 8053次閱讀
- 嵌入式C語言的小技巧能夠減少不少代碼量 1606次閱讀
- 程序員學(xué)習(xí)Julia編程語言的五個理由 3981次閱讀
- 程序員值得一看的9本學(xué)習(xí)算法經(jīng)典書籍 4w次閱讀
- 程序員眼中的浪漫,如何用C語言畫“心”? 4727次閱讀
- C語言作為高級編程語言中的一門“低級”語言為什么要學(xué)習(xí)? 8180次閱讀
- 如果是初學(xué)C語言請看完,如何學(xué)好C語言絕對精品 8769次閱讀
下載排行
本周
- 1OAH0428 V1.0英文規(guī)格書
- 5.86 MB | 8次下載 | 免費(fèi)
- 2TLV246x 帶關(guān)機(jī)功能的低功耗軌道到軌道輸入/輸出運(yùn)算放大器系列數(shù)據(jù)手冊
- 1.46 MB | 次下載 | 4 積分
- 3TETTEX 2765型電壓互感器校驗(yàn)儀原理方框圖資料
- 2.07 MB | 次下載 | 10 積分
- 4TETTEX 2765型電壓互感器校驗(yàn)電路原理圖資料
- 4.35 MB | 次下載 | 免費(fèi)
- 5數(shù)字16位串行輸出型環(huán)境光傳感器IC BH1750FVI數(shù)據(jù)手冊
- 0.38 MB | 次下載 | 1 積分
- 6數(shù)字光模塊 GY-30說明書
- 0.11 MB | 次下載 | 1 積分
- 7江西摩矽半導(dǎo)體介紹及其產(chǎn)品
- 2.04 MB | 次下載 | 免費(fèi)
- 8沁恒CH554評估板資料包
- 1.25 MB | 次下載 | 5 積分
本月
- 1如何看懂電子電路圖
- 12.88 MB | 138次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊
- 1.63 MB | 12次下載 | 免費(fèi)
- 3RK3588數(shù)據(jù)手冊
- 2.24 MB | 9次下載 | 免費(fèi)
- 4ESP32開發(fā)板元件資料
- 0.03 MB | 8次下載 | 免費(fèi)
- 5OAH0428 V1.0英文規(guī)格書
- 5.86 MB | 8次下載 | 免費(fèi)
- 6BK4802P 玩具無線對講/遙控 IC數(shù)據(jù)手冊
- 1.81 MB | 5次下載 | 2 積分
- 7臺式主板DDR5內(nèi)存插槽引腳功能表資料
- 0.17 MB | 3次下載 | 5 積分
- 8PC1032 5.5V_3A高效率同步降壓轉(zhuǎn)換器數(shù)據(jù)手冊
- 0.76 MB | 3次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935132次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191411次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183345次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81593次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73818次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65990次下載 | 10 積分
電子發(fā)燒友App






創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論