1樓:蘇荷
即使有書也要把**用手敲進去,有些細節只有用手敲才能注意到。另外也要試圖改改書上的**,試試「書上這樣做,我偏要這樣試試看」的學習方法,可能有意外收穫。學習初期的成就感很重要,請注意培養。
推薦譚浩強先生的書。待到基礎語法學會後,自己可以寫一些小題目,遇到不會的地方可以去查查c\c++的幫助文件。個人認為學這些程式語言要仔細認真,即使自學也會有所成就的,當然大量參閱他人成功的**是有必要的。
因為c++本身就強調**重用嘛。
最後,有一點要說一下。不要僅僅著眼於語法,物件導向的靈魂更為重要。遇到想不明白的地方可以運用物件導向的方法把問題影射到現實社會,模擬地想一想,有時很多問題可以想明白,畢竟物件導向就是要求計算機用更接近人的思維方式的方式去處理問題,現實是複雜的,所以c++肯定比面向過程的c要複雜。
還有,作為寫程式的人,要多站在計算機(編譯器)的角度思考錯誤的原因,了解一下記憶體等硬體的工作原理是很有幫助的,所以說,好的程式設計師必須是軟體硬體知識都過硬才行啊!
希望能解決您的問題。
2樓:匿名使用者
買幾本入門書 邊看邊敲**,慢慢入門了再看高階一些的書
3樓:毛主愛
買本c++教程的書學.我介紹一本c++大學教程第7版.你可以去京東看看.我覺得新手看這本書不錯.因為我也是看這本書的!
初中生如何自學c++
4樓:長沙新華電腦學院
初中生相對來說基礎薄弱,可以找電腦學校請老師教你
5樓:匿名使用者
初中就學了 厲害啊 俺大一才過了c 還沒學c++
如何學習c++?
6樓:蛋七
學習c++,這裡有比較全面的七個步驟:
一、定義程式的目標
首先,沒有目標的工作都是「耍流氓」,所以在動手寫程式之前,要先在腦子裡有清晰的思路。明確自己想做什麼,需要哪些資訊,要進行哪些計算和控制,以及程式應該要報告什麼資訊。這些都思考清楚後,才能進行下一步。
二、設計程式
對這項工作有概念性的認識後,就應該考慮如何用程式來完成它。例如,使用者介面應該是怎樣的?如何組織程式?目標使用者是誰?準備花多長時間來完成這個程式?
除此之外,還要決定在程式中如何表示資料,以及用什麼方法處理資料。學習c語言之初,遇到的問題都很簡單。但是,隨著要處理的情況越來越複雜,需要決策和考慮的方面也越來越多。
通常,選擇乙個合適的方式表示資訊可以更容易地設計程式和處理資料。
三、編寫**
設計好程式後,就可以著手編寫**了。這一步就是把你設計的程式翻譯成c語言。一般而言,使用文字編輯器建立源**檔案。
該檔案中內容就是你翻譯的c語言**。程式清單1.1是乙個c源**的示例。
在這一步驟中,應該給自己編寫的程式新增文字注釋。最簡單的方式是使用c的注釋工具在源**中加入對**的解釋。
四、編譯
接下來的這一步是編譯源**。編譯器是把源**轉換成可執行**的程式。可執行**是用計算機的機器語言表示的**。
這種語言由數字碼表示的指令組成。也就是說,不同的計算機使用不同的機器語言方案。c編譯器負責把c**翻譯成特定的機器語言。
此外,c編譯器還將源**與c庫的**合併成最終的程式。最後就可以生成乙個使用者可以執行的可執行檔案,其中包含著計算機能理解的**。
編譯器還會檢查c語言程式是否有效。如果c編譯器發現錯誤,就不生成可執行檔案並報錯。理解特定編譯器報告的錯誤或警告資訊是程式設計師要掌握的另一項技能。
五、執行程式
傳統上,可執行檔案是可執行的程式。在常見環境(包括windows命令提示符模式、unix終端模式和linux終端模式)中執行程式要輸入可執行檔案的檔名,而其他環境可能要執行命令或一些其他機制。例如,在windows和macintosh提供的整合開發環境(ide)中,使用者可以在ide中通過選擇選單中的選項或按下特殊鍵來編輯和執行c程式。
最終生成的程式可通過單擊或雙擊檔名或圖示直接在作業系統中執行。
六、測試和除錯程式
程式執行的過程中,可能會出現執行錯誤,計算機行話叫作bug,然後就要查詢並修復程式錯誤,這個過程叫除錯。你可能會犯基本的設計錯誤,可能錯誤地實現了乙個好想法,可能忽視了輸入檢查導致程式癱瘓,可能會把圓括號放錯地方,可能誤用c語言或打錯字等等。有bug是很正常的,不必緊張,現在我們可以進入下一步。
七、維護和修改**
除錯完程式後,就要修改程式。例如,使用者輸入以zz開頭的姓名時程式出現錯誤、你想到了乙個更好的解決方案、想新增乙個更好的新特性,或者要修改程式使其能在不同的計算機系統中執行,等等。如果在編寫程式時清楚地做了注釋並採用了合理的設計方案,維護和修改**就是一件很容易的事情了。
7樓:劉現群
系統學習一門語言,最好是跟著一本書邊學邊練習,快速掌握這門語言的語法和基礎特性,然後就可以找小專案練手,練一練再回頭來看書,往復迴圈,不斷加深理解,慢慢就能掌握到位。
學習c++語言最好的教程,是c++之父bjarne stroustrup親自撰寫的《the c++ programming language (4th edition)》,支援c++11,機械工業出版社有英文原版,分兩本,第一本講1~3部分,c++語言的基礎內容,第二本是專講第4部分,c++標準庫。
另外還有兩本書,也是學習c++語言的很好選擇,《c++ primer plus(6th edition)》和《the c++ standard library: a tutorial and reference (2nd edition)》,也都支援c++11 。
需要注意的是,選擇(設計)練習專案時,最好能結合當前的學習進度,讓自己能夠完成,收穫正向反饋,激勵自己不斷前進。只有持續的正向激勵,才能讓乙個人順暢的完成c++語言的學習。所以,一系列良好的練習專案很重要,既不能難度太低(沒有成就感),也不可難度太高(會有挫敗感),稍稍付出努力就能完成是最理想的。
一旦完成了基礎語言的學習和一系列練習專案,對語言有了一些感知,就可以參與到複雜度較大的專案中來磨練自己。最好是能結合自己的工作與生活,做一些自己感興趣的專案,興趣是最好的老師和最強的動力,如果做的東西感興趣,就很容易鑽進去,學下來。
結合c++的知識圖譜,對c++語言的學習,建議順序是這樣的:
基礎語言
類與物件導向
輸入輸出
字串處理(類庫和正規表示式)
容器類庫
泛型演算法
多執行緒原子操
如何自學c++語言
8樓:
新手看c++ primer plus,已經入門了就看c++ primer,把裡面的習題都做一下,這些做完你就知道接下來該怎麼做了
怎樣自學c++,以成為程式設計師
9樓:長沙新華電腦學院
首先,我們必須承認,學習要講究方法,有捷徑。其次,我們還得承認,學習要下苦功,要務實。上小學的時候,書上有個故事,是關於王羲之學習書法的:
王獻之問他父親王羲之,學習書法的秘訣是什麼,他父親把他帶到後院,指著18口大水缸說,你如果把這裡的水都寫完了,就知道書法的秘訣在那裡了。這個故事相信很多人都還記得。
想自學c++,請問我應該從**開始學??
10樓:匿名使用者
很多c語言的初學者可能會碰到很多問題,最大的問題是沒有經驗,也不知從何提高,根據我多年的經驗和給別人面試的結果看,很多人的問題都在於語法不熟練,沒有經驗。
標準c語言語法其實並不多,但是很多c編譯器為了實際工作中需求增加了很多新特性,這些對於已開始,並不需要掌握。
1,c語言的變數。對於變數很多人都知道,只要學過的,都很清楚是怎麼回事。但是對於變數在實際執行中的分配空間並不知道,如char乙個位元組,int 4位元組,short 2位元組,並且在不同的作業系統下會有些許差異。
另外指標一般都是4個位元組。
同樣的道理,變數的型別就是和分配空間密切相關的。要掌握(強行)型別轉換的本質,我想你一定知道了,對了,無非是訪問空間不同了。值呢?
位址對齊,align關鍵字,為了更快速訪問儲存器。和大小端一樣這是和儲存器相關的,當然也和cpu相關。
2,指標。這個是最頭疼的問題,也是常常理解不深刻的問題。其實指標就是位址,為了方便和節省空間,我們定義乙個指標,讓他指向我們想訪問的位址,然後操作。
指標也是有型別的,通常我們定義和要訪問變數相同的型別。
3,函式。函式就是功能**,對變數進行操作,變數對應的就是你要訪問的物件,最終都是寫到計算機的暫存器中的。所以需要對計算的晶元的暫存器(功能)需要比較好的理解。
如intel8086系列的一些暫存器,如何使用就需要看相關的spec.基本的功能就是,給出你要訪問的位址,然後向該位址讀寫值。
好好的謝你的printf()函式,這個函式可以告訴你很多,如sizeof(long),你知道這個值麼?
4,流程。很重要的一點就是思路,流程。其實看一規範,讀乙份spec.很簡單。關鍵是你如何把spec上所標示的功能寫成**。這就需要思路,這是最基本的。
其實也很簡單,只要找對位址,然後向位址寫你想要的功能(spec)。
5,儲存器。cpu之外的所有的裝置都可以沒有,但是儲存器不能沒有。小到暫存器,達到硬碟。
對儲存器的理解很重要。其實沒有什麼重要的。就是儲存資料和**的地方。
cpu會從儲存器中去取指令和資料。所以對儲存器要了解,了解基本結構,設計原理,如果可能的話了解一些簡單的時序圖和原理圖。最基本如pn節,單位儲存單元,菊花鏈等等。
除此之外,對於通常的檔案系統也要了解,一般入fat,ext2,cdfs,ntfs等要了解一下。這個有助於了解儲存器是如何被管理的。檔案系統的讀寫read,write,open close,這些函式是必須的。
記憶體是一類特殊的儲存器。通常只在執行的時候使用,使為了得到更好的效能。記憶體中有乙個概念,其實是作業系統的叫位址重對映,因為在外存上的位址和記憶體中的位址可能不一樣。
這就需要位址重對映。可以回去看一下作業系統的課本。
另外對於記憶體的分配malloc free等等函式要掌握。
6,引導。只有一句話,把你要的**放在特定的地方,然後引導程式會將你的**copy到記憶體然後remap一下,開始執行你的系統。
初中生如何與女生表白,初中生如何追女生?
你們的楊 你想留條後路?那就是不表白。你不確定那你就去確定。當然不是讓你直接去問。旁敲側擊。比如你可以去試試拉她的手。試試去和她做一些親密的事。看看她的態度。如果象徵性的抗拒說明她對你還是有一定的感覺的。然後你再慢慢把這種感覺推進。就是邀請她一起去看電影。簡單點說更往情侶的方向發展。也許慢慢你可能沒...
初中生如何選擇技校,初中生如何選擇好自己要在技校的學習方向?
一 首先初中畢業,是可以讀技校的。有的技校有中專班,和大專班。如果你選擇中專班呢。那就可以接著直接讀就行了。但是如果你要想讀大專班呢。那你可以選擇三年制的。既有一年是學習高中知識的。後二年學大專的知識。也就說等你畢業後。會獲得國家承認的大專學歷。二 對於初中畢業的學生來說。不建議你選擇純文憑類的大專...
初中生怎麼賺錢,初中生如何賺錢?
朋友你好,人從年輕就要開始有理財的規劃,有規劃更要注重實踐 積累經驗,所謂 實踐出真知 可選 投資,投資可以在自己的財智下投資,真正的財富主導權只是你自己,你是自己資金的統帥,把命運掌握在自己手中,任何人不會影響你的決策,充分發揮你的能力,現在銀行 盈率已經比較低了,說明 處於底部區域,現在 230...