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