談及C語言,我想凡是學過它的朋友都有這樣一種感覺,那就是“讓我歡喜讓我憂?!睔g喜的是,C語言功能非常強大、應用廣泛,一旦掌握了后,你就可以理直氣壯地對他人說“我是電腦高手!”,而且以后若是再自學其他語言就顯得輕而易舉了。憂慮的是,C語言猶如“少林武功”博大精深,太難學了。其實就小編認為C語言并非是晦澀難懂的,只要你能理清思路,掌握它的精髓,那么學習C語言是一件非常容易事。 但是想很快掌握是不可能的,以大部分專業(yè)學習者的學習經(jīng)驗來看,剛?cè)腴T學習一門計算機語言,教學書你至少要看三遍才能完全掌握的。出于現(xiàn)實的考慮現(xiàn)在教材看三遍基本上不太可能了。在此小編就給大家?guī)弦稽c干貨,希望大家在能夠喜歡上C語言。好的,廢話不多說,下面給大家簡單介紹一下C語言的十個注意事項: 1、書寫標識符時,忽略了大小寫字母的區(qū)別。 main { int a=5; printf(“%d”,A); } 編譯程序把a和A認為是兩個不同的變量名,而顯示出錯信息。C認為大寫字母和小寫字母是兩個不同的字符。習慣上,符號常量名用大寫,變量名用小寫表示,以增加可讀性。 2、將字符常量與字符串常量混淆。 char c; c=”a”; 在這里就混淆了字符常量與字符串常量,字符常量是由一對單引號括起來的單個字符,字符串常量是一對雙引號括起來的字符序列。C規(guī)定以“\”作字符串結(jié)束標志,它是由系統(tǒng)自動加上的,所以字符串“a”實際上包含兩個字符:‘a(chǎn)’和‘\0’,而把它賦給一個字符變量是不行的。 3、忽略了“=”與“==”的區(qū)別。 在許多高級語言中,用“=”符號作為關系運算符“等于”。如在BASIC程序中可以寫 if (a=3) then … 但C語言中,“=”是賦值運算符,“==”是關系運算符。如: if (a==3) a=b; 前者是進行比較,a是否和3相等,后者表示如果a和3相等,把b值賦給a。由于習慣問題,初學者往往會犯這樣的錯誤。 7、輸入數(shù)據(jù)的方式與要求不符。 ①scanf(“%d%d”,&a,&b); 輸入時,不能用逗號作兩個數(shù)據(jù)間的分隔符,如下面輸入不合法: 3,4 輸入數(shù)據(jù)時,在兩個數(shù)據(jù)之間以一個或多個空格間隔,也可用回車鍵,跳格鍵tab。 ②scanf(“%d,%d”,&a,&b); C語言規(guī)定:如果在“格式控制”字符串中除了格式說明以外還有其它字符,則在輸入數(shù)據(jù)時應輸入與這些字符相同的字符。下面輸入是合法的: 3,4 此時不用逗號而用空格或其它字符是不對的。 3 4 3:4 又如: scanf(“a=%d,b=%d”,&a,&b); 輸入應如以下形式: a=3,b=4 8、輸入輸出的數(shù)據(jù)類型與所用格式說明符不一致。 例如,a已定義為整型,b定義為實型 a=3;b=4.5; printf(“%f%d\n”,a,b); 編譯時不給出出錯信息,但運行結(jié)果將與原意不符。這種錯誤尤其需要注意。 9、定義數(shù)組時誤用變量。 int n; scanf(“%d”,&n); int a[n]; 數(shù)組名后用方括號括起來的是常量表達式,可以包括常量和符號常量。即C不允許對數(shù)組的大小作動態(tài)定義。 <div '="">10、在不應加地址運算符&的位置加了地址運算符。 char str[20]; scanf(“%s”,&str); C語言編譯系統(tǒng)對數(shù)組名的處理是:數(shù)組名代表該數(shù)組的起始地址,且scanf函數(shù)中的輸入項是字符數(shù)組名,不必要再加地址符&。應改為: scanf(“%s”,str); 以上就是小編想告訴大家的10個注意事項,私信小編“學習”可以免費獲取學習資料哦,學習C語言的道路是漫長的,希望你不忘初心! |
|