c語言學習新手必看
更新時間: 2007-05-31 14:34:19來源: 粵嵌教育瀏覽量:585
本人也是剛學C不久算是老菜鳥。把我遇到的問題寫出來,希望對初學者有點幫助。
一、分號,大括號
分號。分號是表達式結束的標志,一般表達式后面都要有。 寫“;”的時候一定要注意:是否要結束前面的語句 。注意:if,switch,for,while語句,數據類型定義,函數定義。
if(a>b) /*if語句,沒有分號*/
{...}
while(i+=10,i!=100); /*while語句循環體為空,依靠逗號語句實現循環*/
struct a /*結構體數據定義,沒有分號*/
{...}b; /*結構體變量,要有分號*/
int sum(...) /*函數定義,沒有分號*/
{....}
大括號。大括號是一個語句段的標志。 寫大括號時一次寫一對,然后把光標移到大括號里寫 。避免遺漏。
二、運算符號
“=”與“==”
“=”用于賦值,注意“=”左邊必須是變量,右邊可以是常量也可以是變量。“==”用于判斷兩個量的大小,左右兩邊可以是常量也可以是變量( 盡量把常量寫在左邊,這樣“==”誤寫成“=”時編譯器就會報錯 )。 運算表達式有它本身的值 。“=”語句值為“=”右邊的量的大小;“==”語句值為判斷結果,無外乎兩種,0(表示“==”兩邊不等)1(“==”兩邊相等)。
(i=1)==(3==4); /*i值為1,整個表達式值為0*/
“,”
逗號語句是從左到右計算,整個逗號語句的值為一個語句的值
i=(j=2,j+8,j++); /*先計算j=2,值為2,j+8不是運算表達式,跳過,計算j++得到整個括號內的值3*/
“/”
“/”兩邊都是整型變量的時候結果也是整型,而且結果遵循向0靠攏的原則 。
運算符的優先級及結合方向
不多說了,表格一定要背牢。
三、變量
命名
不要吝惜,能說明白性質盡量在變量的名字上說明。 避免老是使用一個字母,或者難以理解的變量名 。對于較長的變量命名可以使用宏定義、類型定義。
#deine UP 0x4800 /*鍵碼的宏定義*/
typedef struct
{....}MEM; /*結構體變量的類型定義*/
類型
注意變量的使用范圍。 當不確定變量的范圍的時候盡量選用值域寬的類型。雙目運算符兩邊的變量一般類型要一致。不一致的時候需要使用類型轉換 。
上回說的是一些小問題,真正編東西,學東西還有許多要注意的地方。
開始學習編程可以參考以下方法
1、多看代碼
在有一定基礎以后一定要多看別人的代碼。 注意代碼中的算法和數據結構。 畢竟學C之后的關口就是算法和數據結構。提到數據結構,指針是其中重要的一環,絕大多數的數據結構是建立在指針之上的,如鏈表、隊列、樹、圖等等,所以只有學好指針才能真正學好C。別的方面也要關注一下,諸如變量的命名、庫函數的用法等等。有些庫函數是經常用到的。對于這些函數的用法就要牢牢記住。
2、要自己動手
編程序是個實干的活,光說不練不行。剛開始學的時候可以多練習書上的習題。 對于自己不明白的地方,自己編個小程序實驗一下是的方法,能給自己留下深刻的印象。 自己動手的過程中要不斷糾正自己不好的編程習慣和認識錯誤。有一定的基礎以后可以嘗試編一點小游戲,文曲星之類的電子詞典上小游戲很多,照著編作為練習。基礎很扎實的時候,可以編一些關于數據結構方面的東西,諸如經典的學生管理系統。之后.....學匯編、硬件知識。
3、選擇一個好的編譯器
本人前段時間就遭受了一個編譯器的折磨。這個編譯器帶了個自運行程序,自動修改IE主頁。叫什么名字就不說了。言歸正傳,英文版Turbo C v2.0沒話說,經典的C編譯器(下載地址: http://www4.skycn.com/soft/2151.html ),其次推薦一個win-tc 1.91,支持windows下的編譯器。(下載地址: http://www4.skycn.com/soft/17869.html )
4、關于養成良好的編程習慣
基本上每本C教材上都要提到。作為新手這條一定要時時遵守。記的一位網友發過評論:高手寫一堆亂七八糟的代碼就是藝術,新手寫一堆亂七八糟的代碼就是垃圾。就象古代賢人寫錯字叫通假字,小學生寫錯字叫錯別字,一個道理。具體方面:
1)、 在比較復雜的代碼后面要有注釋。 如果光溜溜一堆代碼,別人就不可能看懂你的代碼,而且也不利于查找錯誤。除非你一直編東西給自己看。能在代碼里說明白的就一定要在代碼里體現。比如變量名、函數名,在命名的時候盡量說明是干什么用的。
2)、注意語句的嵌套不能過長,一般來說,一段代碼里Tab要少于8個。 簡單說就是語句多8個嵌套。 對于新手來說,這個標準還要下降。有一個好習慣是,把主函數盡量寫簡短。經常看到別人的代碼是主函數只有幾行,幾個函數調用,而定義全在主函數外部。這樣一是減少了主函數內部的嵌套,二是比較精簡,容易讀懂。
3)、注意語句的選擇。并不是分支語句就用if循環就用while、for。在適當的情況下switch和do while語句也是要用的。在某些時候,switch語句比if語句更加精練明了,而do while比while少一個循環。