零基礎學習C C 需要注意的地方

2022-09-27 09:36:12 字數 2640 閱讀 1363

談及c/c++,功能強大、應用廣泛,一旦掌握了後,若是再自學其他語言就顯得輕而易舉了。那為什麼學c/c++的人少呢?很多人認為c/c++雖然博大精深,但也難學。其實就本人認為c/c++並程式設計客棧非是「difficult(困難)」的,只要你能理清思路,掌握它的精髓,配合一套教材。那麼學c/c++是一件非常容易且又其樂無窮的事。今天本人就與大家一起談談如何學習c/c++或者說學習c/c++應從哪幾方面著手。

先來說說c語言。

1、入門後多看**

在有一定基礎以後一定要多看別人的**。注意**中的演算法和資料結構。畢竟學c之後的關口就是演算法和資料結構。提到資料結構,指標是其中重要的一環,絕大多數的資料結構是建立在指標之上的,如鍊表、佇列、樹、圖等等,所以只有學好指標才能真正學好c。別的方面也要關注一下,諸如變數的命名、庫函式的用法等等。有些庫函式是經常用到的。對於這些函式的用法就要牢牢記住。

2、要自己動手

程式設計序是個實幹的活,光說不練不行。剛開始學的時候可以多練習書上的習題。對於自己不明白的地方,自己編個小程式實驗一下是最好的方法,能給自己留下深刻的印象。自己動手的過程中要不斷糾正自己不好的程式設計習慣和認識錯誤。有一定的基礎以後可以嘗試編一點小遊戲,照著編作為練習。基礎很紮實的時候,可以編一些關於資料結構方面的東西。之後.....學彙編、硬體知識。

3、選擇乙個好的編譯器

gcc或者vs都是乙個好的選擇

4、關於養成良好的程式設計習慣

(1) 在比較複雜的**後面要有注釋。如果光溜溜一堆**,別人就不可能看懂你的**,而且也不利於查詢錯誤。除非你一直編東西給自己看。能在**裡說明白的就一定要在**裡體現。比如變數名、函式名,在命名的時候盡量說明是幹什麼用的。

(2)注意語句的巢狀不能過長,一般來說,一段**裡tab要少於8個。簡單說就是語句最多8個巢狀。對於新手來說,這個標準還要下降。有乙個好習慣是,把主函式盡量寫簡短。經常看到別人的**是主函式只有幾行,幾個函式呼叫,而定義全在主函式外部。這樣一是減少了主函式內部的巢狀,二是比較精簡,容易讀懂。

(3)注意語句的選擇。並不是分支語句就用if迴圈就用while、for。在適當的情況下switch和do while語句也是要用的。在某些時候,switch語句比if語句更加精練明了,而do while比while少乙個迴圈。

很多人對學習c語言感到無從下手,經常問我同乙個問題:究竟怎樣學習c語言?我是乙個教師,已經開發了很多年的程式,和很多剛剛起步的人一樣,學習的第乙個計算機語言就是c語言。經過這些年的開發,我深深的體會到c語言對於乙個程式設計人員多麼的重要,如果不懂c語言,你想寫底層程式這幾乎聽起來很可笑,不懂c語言,你想寫出優秀高效的程式,這簡直就是天方夜譚。為什麼c語言如此重要呢?

系統學習程式設計的方式。首先你要了解什麼語言能做什麼,學來幹嘛,然後學相對應的知識,而不是盲目的去學習。

c語言很多人都是剛剛接觸 完全都不知道這是什麼,那麼就要先裝個編譯器,ied,或者gcc等都可以,只要能用。

c語言知識流程:

學資料型別,-進製轉換-運算子-迴圈語句-開關分支語句-函式-陣列-字串-指標-結構體-記憶體管理-檔案操作-函式指標-指標函式-多維陣列-高階指標-結構圖巢狀-高階記憶體管理-鍊錶-排序演算法-二樹叉-api函式-linux命令-linuxapi函式-shell指令碼-sowww.cppcns.comcket通訊-等。

初學者看得會有點亂,到了學程式設計客棧api函式 的時候也就是開發專案的時候了,但是有一點注意,因為部分知識沒法在書上表達出來,所以目前書上知識是不完善的。

一門語言開發出專案來才算是真正的開始,也就是說,你開發出來專案,才有可能去接觸工作,c語言的工作崗位相對來說是比較少的。

再來說說c++:

c++ 知識很多,主要部分就是框架,qt,mfc這兩種框架目前用的是比較多的,也有人會直接學c++,但是學起來會比直接學c還難,而學過c在學c++是容易很多,主要學的就是框架方面的知識了,c語言xrfnvv的知識和c++的差不多,區別不大,所以學c++的時候主要學的就是框架了。

c++知識流程:

編譯環境配置-名字空間-函式過載-啞元函式-內聯函式-引用-型別轉換-物件導向-類的使用-建構函式-析構函式-拷貝構造-拷貝賦值-this指標-常物件-常函式-動態記憶體分配-靜態成員-運算子過載-繼承-多重繼承-函式重寫-多型-虛函式-抽類象-虛析構-動態繫結-檔案i/o-異常處理-標準異常-泛型程式設計-十大容器-演算法-迭代器-qt程式設計-qt三維圖形-api函式程式設計-mfc框架程式設計。

c語言是面向過程的,而c++是物件導向的。

c和c++的區別:

c是乙個結構化語言,它的重點在於演算法和資料結構。c程式的設計首要考慮的是如何通過乙個過程,對輸入(或環境條件)進行運算處理得到輸出(或實現過程(事務)控制)。

c++,首要考慮的是如何構造乙個物件模型,讓這個模型能夠契合與之對應的問題域,這樣就可以通過獲取物件的狀態資訊得到輸出或實現過程(事務)控制。所以c與c++的最大區別在於它們的用於解決問題的思想方法不一樣。之所以說c++比c更先進,是因為「 設計這個概念已經被融入到c++之中 」。

c與c++的最大區別:在於它們的用於解決問題的思想方法不一樣。之所以說c++比c更先進,是因為「 設計這個概念已經被融入到c++之中 」,而就語言本身而言,在c中更多的是演算法的概念。那麼是不是c就不重要了,錯!演算法是程式設計的基礎,好的設計如果沒有好的演算法,一樣不行。而且,「c加上好的設計」也能寫出非常好的東西。

上面知識學完就該到專案開發,只有開發出專案,你才能去工作,開發軟體等。

以上就是乙個學習的流程,從零基礎有順序的學習,才能走得快一點,而不是盲目。

零基礎學Python需要注意些什麼?

雖然國內開設python的大學並不是很多,但python的地位同樣無可取代的,python是現在各大領域中,非常重要的語言之一,也被叫做膠水語言,跟其他的程式設計對比,優勢更加明顯。而且對於零基礎學習程式語言的人來說,python是最合適的選擇,說那麼多,還是開始正題,學習python需要哪些具備哪...

c c 指標精講和需要注意的地方

int x 10 不能對10取位址 因為他不在 堆疊區 堆疊常量區的都b可以對變數取位址10就是乙個字面量 不能取位址 1 指標是一種資料型別 1 指標也是一種變數,占有記憶體空間,用來保持記憶體位址,在一般情況下所有指標 都是4個位元組 2 p操作記憶體 再指標宣告時,號表示所宣告的變數為指標,在...

Lua學習中需要注意的地方

1 全域性變數的刪除可以直接將其賦值為nil 2 字串的引用可以是單引號 或者是雙引號 習慣使用雙引號 3 lua中除了false 跟 nil 是假 其餘值都是真 0,空串都返回真 4 和 比較兩個值,如果兩個值型別不同,lua認為兩者不同 nil只和自己相等。lua通過引用比較tables use...