譚浩強教授,我國著名計算機教育專家。1958年畢業(yè)于清華大學自動控制系。青年時期曾擔任清華大學學生會主席、北京市學聯(lián)副主席、北京市人大代表、全國文教戰(zhàn)線先進分子。他是我國計算機普及和高校計算機基礎教育的開拓者之一。
武俠小說中,各路俠客綠林好漢都是從基本功開始一招一式學起,掌握了足夠多的招式后,加之勤學苦練,量變引起質變,會有一天打開任督二脈頓悟出這些招式背后的哲學邏輯,成為一代宗師。在編程的學習過程中,我們何嘗不是從一招一式的函數(shù)、語法、特性等學起,掌握了一門編程語言后,再學習另一門語言就會快很多,如同擁有內功后,習得其他武功也會輕松很多。
我們平時編寫的代碼最后都會交給CPU來執(zhí)行,如何能巧妙利用CPU寫出性能比較高的代碼呢?看完這篇文章您可能會有所收獲。
70年代初,貝爾實驗室創(chuàng)建了C語言,它是開發(fā)UNIX的副產品。很快C就成為了最受歡迎的編程語言之一。但對于Bjarne Stroustrup來說,C的表達能力還不夠。于是,他在1983年的博士論文中擴展了C語言。隨后,支持類的C語言誕生了。
新手必看!
要想理解 C++ 的 this 指針,我們可以先把下面的 C++ 代碼轉換成 C 代碼。
以下是在日常工作中總結出的一些編碼經驗,還有一些提高程序運行效率的小技巧,讓我們一起來寫出更好的代碼吧~
學習C語言不是一朝一夕的事情,但也不需要花費十年時間才能精通。如何以最小的代價學習并精通C語言是本文的主題。請注意,即使是“最小的代價”,也絕不是什么捷徑,而是以最短的時間取得最多的收獲,同時也意味著你需要經歷艱苦的過程。
最近的工作中,要實現(xiàn)對通信數(shù)據(jù)的CRC計算,所以花了兩天的時間好好研究了一下,周末有時間整理了一下筆記。
70年代初,貝爾實驗室創(chuàng)建了C語言,它是開發(fā)UNIX的副產品。很快C就成為了最受歡迎的編程語言之一。但是對于Bjarne Stroustrup來說,C的表達能力還不夠。于是,他在1983年的博士論文中擴展了C語言。隨后,支持類的C語言誕生了。
在啃掉一本本計算機經典書籍和寫下大量代碼以后……
這篇文章肝了好久,控制有時候給人的感覺是披著數(shù)學外衣的,但是脫下外衣,發(fā)現(xiàn)還是控制,本文有一些基本的推導,無非是為最后的算法C實現(xiàn)做鋪墊,最終目的是能在實踐中進行應用和系統(tǒng)調優(yōu)。
這是一篇使用JMX監(jiān)控Tomcat的實戰(zhàn)文章。
這個面試題是一個朋友在面試的時候碰到的,什么時候會拋出OutOfMemery異常呢?初看好像挺簡單的,其實深究起來考察的是對整個JVM的了解,而且這個問題從網上可以翻到一些亂七八糟的答案,其實在總結下來基本上4個場景可以概括下來。
在眾多的SQL審核產品中,幾乎都會提到一個審核規(guī)則,即select *,規(guī)則描述幾乎一致:禁止使用select *,必須明確選擇所需的列。而這個規(guī)則其實有著很多真實的生產故障案例。
首先我們聯(lián)想一下鏈表,在單鏈表中,我們只能對他的鏈表表尾進行插入,對鏈表的表頭進行結點的刪除,這樣強限制性的鏈表,就是我們所說的隊列。也就是說,隊列(queue)是限定在表的一端進行插入,表的另一端進行刪除的數(shù)據(jù)結構。
我覺得這是一個送分題,奈何知乎人才太多了,給出了各種古怪的寫法,如果是做項目的話,我比驕建議一些正常的寫法,就是大家都能看得懂的,不要搞什么花里胡哨,不過你要是交流的話,既然是交流,我不覺得要多正規(guī),即使你的觀點有問題,我覺得也可以拿出來說說,畢竟是交流,各抒己見,發(fā)表自己的觀點是最重要的。
選擇合適的算法和數(shù)據(jù)結構 選擇一種合適的數(shù)據(jù)結構很重要,如果在一堆隨機存放的數(shù)中使用了大量的插入和刪除指令,那使用鏈表要快得多。數(shù)組與指針語句具有十分密切的關系,一般來說,指針比較靈活簡潔,而數(shù)組則比較直觀,容易理解。對于大部分的編譯器,使用指針比使用數(shù)組生成的代碼更短,執(zhí)行效率更高。
本篇文章講解了計算機的原碼、反碼和補碼,并且進行了深入探求了為何要使用反碼和補碼、以及更進一步的論證了為何可以用反碼、補碼的加法計算原碼的減法。
一文盤點C語言內存操作的12個陷阱。