1. 程式人生 > >C語言學習Day3

C語言學習Day3

  • void name (char msg[ ])該函式會收到一個字元陣列(字串)
  • msg引數用於定義不知道長度的陣列之類,該引數不包含長度
  • sizeof是運算子!不是函式! 該運算子可以計算物件所佔的空間大小,支援資料型別和資料
    例如sizeof(int)或sizeof(“Apples!”),前者返回值一般為4,後者返回值為9(8個字元加\0)
  • %i和%均為有符號十進位制整數,但%i可以自動將輸入的八進位制(或者十六進位制)轉換為十進位制,而%d則不會進行轉換。
  • %s:字串佔位符
  • 陣列變數與指標類似,它代表了字串首字元的地址。C語言在面對字串變數時,會在棧中為每一個字元劃分空間,並加上終止字元\0,同時使該變數與該字串首字元的地址相關聯。每當呼叫該變數時,計算機會用首字元的地址替代該變數。因此,陣列變數和指標很像。
  • 函式在傳遞的其實是指標
  • 指標變數在32位系統下佔4個位元組,64位系統下佔8個位元組
  • 為什麼sizeof是運算子而非函式?
    運算子會被編譯為一連串的指令,而函式是具有獨立功能的程式碼片段。

詳細分析點此