重拾C語言(1)


       現在的時間是2015年4月21日,晚上21點20分。第一次寫技術博客(也許目前只能當作自我筆記總結而已微笑)。

       這學期正式開始學習嵌入式軟件了,從很早之前就規劃好,想去做一個優秀的嵌入式工程師。無奈大一和大二上學期實在是不學無術,現在遊戲賬號丟給女朋友了,心也好好收了收。是時候真正的開始我的程序員之路了!


       言歸正傳。今天起,我開始複習C語言的任務,爲日後的嵌入式編程打下一定的基礎。主要的參考書目很簡單,《C Prinmer Plus》《C語言入門經典》(其實現在看來,還是以第一本書爲主,第二本書比較淺顯,大一剛學的時候對我幫助很多,如果在第一本書全程看完之後還有空閒的功夫,就再去過一遍《入門經典》)。如果當前的任務能完成,暑假的時候,就可以去看“C語言三劍客”了(大一手賤買了英文版,閱讀效率堪憂),也許那就是另一個系列了。

       今時不同往日,和大一零基礎比起來,現在的自己對於C語言還是有不少了解和心得的。這次重拾C語言,不僅僅是爲了複習曾經學過的知識,更是要讓自己從瞭解C,變成精通(儘量吧)C。

       逐字認真看過了《C Prinmer Plus》的第1、2、3章(第3章其實還剩幾頁), 給自己將來的編程之路設定了幾個指導的方針,也提出了幾個問題:

  1. 以C99爲基準,做到遵循ISO規則的同時儘量向下兼容
    例:文件名及後綴不超過8位、變量在開始處聲明、以main(void)代替main()等等。
  2. 做到 0 error 0 warn。
  3. 編寫代碼的環境以Linux爲主。
  4. 儘量使用有意義的變量名,避免如a、x的命名方式。
  5. 習慣註釋,養成優雅的代碼風格。

       這裏我收集了一些自己感覺重要的知識點:

  1. 在老式的機型上,int型最多支持8位,故2^0+2^1+2^2+2^3+...+2^7=256,故只支持0~255(不考慮負數的情況下)。
    而C99標準中,int型和short型皆爲32位,故支持-32768~32767。
  2. 十進制的縮寫爲dec = deca :十(詞頭)   decade:十年
    八進制的縮寫爲octal。
    十六進制的縮寫爲hex = hexadecimal = hexa+dec hexa:六(詞頭) hexakill(六殺大笑

        今天覆習的過程中,我還產生了幾個疑問,如下:

  1. P38中,表示八進制的究竟是%0還是%o?

    %o,書中是印刷錯誤。

  2. 爲什麼英語中Dec代表的是12月,Oct代表的是10月?

    公曆起源於古羅馬曆法。羅馬的英語原來只有10個月,古羅馬皇帝決定增加兩個月放在年尾,後來凱撒大帝把這兩個月移到年初,成爲1月和2月。原來的1月和2月便成了3月和4月。依次類推,這就是今天世界沿用的公曆。

  3. %h是什麼含義?

    short型,可用於控制字符長度

      




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章