c語言學(xué)習(xí)心得6篇_c語言程序設(shè)計心得
c語言學(xué)習(xí)心得6篇_c語言程序設(shè)計心得
C語言是一門面向過程的、抽象化的通用程序設(shè)計語言,廣泛應(yīng)用于底層開發(fā)。學(xué)習(xí)C語言需要的是堅持下去的毅力,認真對待每次錯誤的耐心,還有孜孜不倦的努力。那么關(guān)于c語言學(xué)習(xí)心得要怎么寫呢?本文是c語言的學(xué)習(xí)心得,僅供參考。
c語言學(xué)習(xí)心得一
剛開始學(xué)C語言的時候,很迷茫,在此之前從沒有接觸過C語言,有點摸不著頭腦。可是在上機過后,我覺得編程是很有趣的一件事。我知道要學(xué)好C語言不容易,可是我決定完成這件不容易的事。
要學(xué)好C語言就要先懂得最基本的語法知識,看課本是必需的。我覺得看不懂也沒關(guān)系,盡力去理解就好了,在對知識有了一個大致的了解過后,就要上機實踐。學(xué)習(xí)C語言一定要動手,只看不做,眼高手低是不行的。
最開始可以打書上的例題,熟悉程序,慢慢的開始試著編程。在編程時要理清自己的思路,然后再轉(zhuǎn)換成C語言中的語言,這個時候就更要動手了,只有通過上機操作才能驗證自己程序的正確性。執(zhí)行程序,不要害怕錯誤,其實,我覺得錯誤是好的,知道了自己所學(xué)知識的不足,并根據(jù)提示改
正程序中發(fā)生的錯誤,一種成就感油然而生,覺得自己的付出都是值得的。
良好的編程習(xí)慣是學(xué)好C語言的重要因素,只有勤動手,多動腦才能學(xué)好C語言,光說不練是不行的。
在學(xué)習(xí)的時候,不會的一定要問明白,可以求助于老師,同學(xué),不要自己一個人鉆牛角尖,浪費時間又學(xué)不到東西。
上課的時候一定要認真聽,老師講的肯定是最重要的,錯過了就是一大筆損失,認真聽講才可以提高學(xué)習(xí)效率。
我覺得在編程之前,要把自己的想法寫在紙上,如果是簡單一點的程序不需要這樣,如果程序比較復(fù)雜,就寫下來,這樣可以讓思路更加清晰。
輸入程序時一定要認真,不要把“,”與“;”混淆,用scanf的時候不要忘記“&”,用“switch”要記得“break”,用if,while的時候注意不要加“;”,“{}”“()”一定要配對,不要多也不要少一半,“=”與“==”的區(qū)別要清楚,要勤查優(yōu)先級,要記住一些基本的,例如兩個值之間的調(diào)換怎么寫等等。
在編程時除了要認真謹慎之外,更重要的是掌握基本的知識,例如if語句與switch語句的區(qū)別,它們都是條件語句,用來執(zhí)行判斷功能,但是什么時候用if什么時侯用switch應(yīng)該弄清楚:若條件分支多但是條件的值是一個確定的值時就用switch。反之,在大多數(shù)情況下就用if。又如各種循環(huán)的應(yīng)用,及循環(huán)之間的嵌套都要能靈活應(yīng)用。還要注意一些細小的瑣碎的知識,如C語言規(guī)定的標識符,大小寫字母間的ASCII代碼值相差32,強制類型轉(zhuǎn)換符,自增自減運算符,符合運算符,逗號運算符等。
學(xué)習(xí)C語言需要的是堅持下去的毅力,認真對待每次錯誤的耐心,還有孜孜不倦的努力。擁有一個良好的心態(tài),相信自己,你就會發(fā)現(xiàn)學(xué)好C語言不再困難!
c語言學(xué)習(xí)心得二
看了一段時間的《C和指針》,這樣看的效果不是很好,看著書本當時是懂了,有點恍然大悟的感覺,但是發(fā)現(xiàn)并不能真正的把理解的內(nèi)容加入到自己程序當中,不能很好的去運用它,所以對于C語言我認為理論加實踐,是學(xué)習(xí)C語言的最好方法,看書并不能完全理解書中的內(nèi)容,也較容易遺忘,學(xué)習(xí)效率比較低,所以現(xiàn)在學(xué)習(xí)《數(shù)據(jù)結(jié)構(gòu)》,在看書的同時,會在Microsoft Visual C++ 6.0軟件上實踐,嚴蔚敏寫的《數(shù)據(jù)結(jié)構(gòu)》這本書,比較經(jīng)典但是這本書是偽算法,并不能直接在計算機上運行,對于初學(xué)者上機實踐比較困難,另外說一下,我認為學(xué)習(xí)應(yīng)該是在模仿中理解,在模仿中創(chuàng)新,所以我選擇結(jié)合高一凡寫的書《數(shù)據(jù)結(jié)構(gòu)算法實現(xiàn)及解析》,這本書嚴蔚敏寫的偽算法全部用程序?qū)崿F(xiàn)了,給我上機實踐提供了很大的幫助,貌似說到數(shù)據(jù)結(jié)構(gòu)了,呵呵,回到正題,下面繼續(xù)說說C語言。
指針是C語言的精華,也是C語言的難點,它就像一把雙刃劍,鋒利無比但運用的不好也會給自己帶來危害,后果比較嚴重,所以重點來說說指針。 很多初學(xué)者弄不清指針和數(shù)組到底有什么樣的關(guān)系,為避免混淆不清,下面總結(jié)一下指針和數(shù)組的特性。指針是保存數(shù)據(jù)的地址,任何存入指針變量的數(shù)據(jù)都會被當作地址來處理,指針變量本身的地址由編譯器另外存儲,存儲在哪里,我們并不知道,間接訪問數(shù)據(jù),首先取得指針變量的內(nèi)容,把它作為地址,然后從這個地址讀或?qū)懭霐?shù)據(jù)。指針可以用間接訪問操作符(*)訪問,也可以用以下標的形式訪問,指針一般用于動態(tài)數(shù)據(jù)結(jié)構(gòu)。數(shù)組是用來保存數(shù)據(jù)的,數(shù)組名代表的是數(shù)組首元素的地址而不是數(shù)組的首地址,所以數(shù)組p與&p是有區(qū)別的,雖然內(nèi)容相同,但意義卻不同,&p才是整個數(shù)組的首地址,數(shù)組名是整個數(shù)組的名字,數(shù)組內(nèi)每個元素并沒有名字,不能把數(shù)組當一個整體來進行讀寫操作。當然數(shù)組在初始化時也有例外,如int p[]=“12345”是合法的。數(shù)組可以以指針的形式訪問如*(p+i);也可以以下標的形式訪問p[i],但其本質(zhì)都是p所代表的數(shù)組首元素的地址加上i*sizeof(類型)個字節(jié)作為數(shù)據(jù)的真正地址來進行訪問的。數(shù)組通常用于存儲固定數(shù)目且數(shù)據(jù)類型相同的元素。剛開始的時候我
有點分不清指針數(shù)組和數(shù)組指針,現(xiàn)在也總結(jié)一下,指針數(shù)組,首先它是一個數(shù)組,數(shù)組的每個元素都是指針,可以理解為“存儲指針的數(shù)組”的簡稱,數(shù)組指針,首先它是一個指針,它指向一個數(shù)組,在32位系統(tǒng)下永遠只占4個字節(jié),至于它指向的數(shù)組有多少個字節(jié),并不知道,可以理解為“指向數(shù)組的指針”。舉個例子,int *p1[10]與int (*p2) [10], 要理解這個問題,首先要清楚操作符的優(yōu)先級,“[]” 的優(yōu)先級比“*” 的優(yōu)先級高,所以首先p1與“[10]”結(jié)合構(gòu)成一個數(shù)組p1[10],int *為修飾數(shù)組的內(nèi)容,所以數(shù)組元素是指向int類型的指針,所以這個是指針數(shù)組,“()” 的優(yōu)先級比“[]” 的優(yōu)先級高,“*”與p2結(jié)合構(gòu)成一個指針變量,int修飾數(shù)組的內(nèi)容,即數(shù)組的每個元素,數(shù)組這里并沒有名字,是個匿名數(shù)組,現(xiàn)在清楚了p2是一個指針,它指向一個包含10個int類型數(shù)據(jù)的數(shù)組,即為數(shù)組指針。下面再說說內(nèi)存管理,內(nèi)存分為三個部分:靜態(tài)區(qū)、堆、棧。其實堆棧就是棧,而不是堆。靜態(tài)區(qū)是保存自動全局變量和static變量。靜態(tài)區(qū)的內(nèi)容在整個程序的生命周期內(nèi)都存在,由編譯器在編譯的時候分配。堆是由malloc系統(tǒng)函數(shù)分配內(nèi)存的。其生命周期由free和delete決定。棧保存局部變量。棧上的內(nèi)容只在函數(shù)范圍內(nèi)存在,當函數(shù)運行結(jié)束,這些內(nèi)容也會自動被銷毀。再說說有關(guān)內(nèi)存需要注意的地方,定義了指針變量,在使用之前一定要初始化使它指向一塊合法的內(nèi)存,不管什么時候,我們在使用指針之前一定要確保指針是有效的。使用malloc系列函數(shù)分配內(nèi)存,使用完之后應(yīng)及時釋放內(nèi)存,以防止內(nèi)存泄露。
最后總結(jié)的說一下學(xué)習(xí)C語言的方法就是編程編程再編程,理論學(xué)習(xí)與上機操作同時進行,另外在編程序的過程中要養(yǎng)成良好的編程習(xí)慣。
c語言學(xué)習(xí)心得三
C語言是一門低級計算機編程語言,設(shè)計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產(chǎn)生少量的機器碼以及不需要任何運行環(huán)境支持便能運行的編程語言。C語言也很適合搭配匯編語言來使用(往往可以通過內(nèi)聯(lián)匯編語言或與匯編語言目標文件一起連接。對于任何一種操作系統(tǒng)環(huán)境,C函數(shù)的ABI與匯編語言的子過程
剛開始學(xué)C語言的時候,很迷茫,在此之前從沒有接觸過C語言,有點摸不著頭腦??墒窃谏蠙C過后,我覺得編程是很有趣的一件事。我知道要學(xué)好C語言不容易,可是我決定完成這件不容易的事。
要學(xué)好C語言就要先懂得最基本的語法知識,看課本是必需的。我覺得看不懂也沒關(guān)系,盡力去理解就好了,在對知識有了一個大致的了解過后,就要上機實踐。學(xué)習(xí)C語言一定要動手,只看不做,眼高手低是不行的。最開始可以打書上的例題,熟悉程序,慢慢的開始試著編程。在編程時要理清自己的思路,然后再轉(zhuǎn)換成C語言中的語言,這個時候就更要動手了,只有通過上機操作才能驗證自己程序的正確性。執(zhí)行程序,不要害怕錯誤,其實,我覺得錯誤是好的,知道了自己所學(xué)知識的不足,并根據(jù)提示改正程序中發(fā)生的錯誤,一種成就感油然而生,覺得自己的付出都是值得的。
良好的編程習(xí)慣是學(xué)好C語言的重要因素,只有勤動手,多動腦才能學(xué)好C語言,光說不練是不行的。
經(jīng)過第一階段對語法的學(xué)習(xí),我覺得實例階段應(yīng)該是一個過渡階段吧,通過前一階段對語法的學(xué)習(xí)之后,可能有很多概念我們都比較模糊,或者說很多東西太抽象了,這就為我們第二個階段的學(xué)習(xí)做好了實例化的準備,可以這樣說吧,第一個階段就我們?yōu)槲覀兊膶W(xué)習(xí)一樣?xùn)|西而構(gòu)建的一個類,里面講了我們應(yīng)該在這里面要做什么?第二階,也就是本階段,我們就應(yīng)該去把前一段的東西具體化,那怎么個具體化呢,練習(xí)一些小例子,從網(wǎng)上下載的電子書上有很多這方面的例子的,如果有自己去書店買書的話,里面也應(yīng)該提供了不少,里面的例子,我是每次都打了一遍,也許有的人不會親自去用手打一遍,什么copy等,當然這樣也行,但我個人認為,對于初學(xué)者來說,最好還是自己動力打一遍比較好,畢竟這些東西對我們來說,都比較陌生,如果每個字都自己打完的話,有些代碼你不想記住也難了,在這里,我們得弄懂練習(xí)的每一個例子,如果能把一些例子稍稍修改,弄懂里面精髓的東西,讓自己知道為什么這樣做,那么是最好不過的了,我平時練習(xí)時,這一步是少不了的,都習(xí)慣了,所以也就成了條件反射,想不這樣都不行。最后,我們就應(yīng)該匯一下總,把前面做過的例子里所用的技術(shù)理一下,再做一個比較大的例子,盡量把到目前為止所懂的知識全部應(yīng)用到里面去,只是盡量,當然有些東西是不能集成到一起的,也是是代碼之間的排斥性。
學(xué)習(xí)C語言需要的是堅持下去的毅力,認真對待每次錯誤的耐心,還有孜孜不倦的努力。擁有一個良好的心態(tài),相信自己,你就會發(fā)現(xiàn)學(xué)好C語言不再困難!
↓↓↓點擊下一頁還有更多精彩的c語言程序設(shè)計心得↓↓↓