首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C 語言入門筆記(一):第一個 C 程式碼逐行解析

     編輯:關於C語言

緣起:為什麼要學 C?

前幾天剛學兩章 Python,覺得 Python 很棒(雖然具體哪裡棒還說不上來)。無意間看到「C 語言可操作硬體」,被定位為中級語言,於是決定 C、Python 同步學習——反正純粹為了樂趣,無壓力,膽子就大了。請別把我想成某漫畫裡那隻「猴子」!

第一個 C 程式與初步解讀

計算機如何理解世界?

以前覺得電腦好奇怪:怎麼用二進制表示萬物?搜尋後明白:不同編碼賦予不同含義。電腦大腦只認二進制,幸好計算快,不然真「笨」。世界首個程式是女性編寫,當時必是用二進制——好厲害!

早期二進制太長易錯,改用十六進制表示(ADA 當時用哪種?)。後來覺得仍麻煩,出現匯編語言:給指令取「外號」,一一對應二進制。但匯編仍繁瑣,夢想像說話一樣寫程式,於是誕生了 C 語言——更接近自然語言。電腦不懂 C,所以需要編譯器(gcc、cl 等):先將 C 轉匯編,再轉二進制,電腦才能執行。

Hello World 逐行拆解

#include <stdio.h>
int main(void)
{
    printf("Hello World! ");
    return (0);
}

初看頭暈,全是 Python 沒有的東西,必須仔細研讀。

第一行:#include <stdio.h>

做事皆有工具包:電工有電工包,木匠有木工包。想在螢幕輸出,需要「輸出包」。#include 將 stdio.h 文件插入此處,<> 指定從標準路徑尋找。stdio.h 定義了輸出(及輸入)工具——其實不止輸出,還有輸入等,這裡一次全拿過來(略顯浪費)。

第二行:int main(void)

main 後跟 () 表示函數,int 為返回型別。函數像工具包裡「有生命的小工具」:餵入 void,吐出 int,可重複使用。但 main 特殊:它是用戶入口函數,通常只執行一次。VC 真正入口是 mainCRTStartup(),在呼叫 main() 前已完成命令列準備、OS 版本獲取、I/O 初始化、環境變量、全域變量初始化、條件編譯等。Win 程式入口為 WinMain(),主控台為 main()。main() 執行完,程式才 exit;它其實是倒數第二個函數,但程式員可操作權限從這裡開始。

第三、六行:{ 與 }

一對大括號代表一個代碼塊,類似 Python 的縮進(暫時這麼理解)。

第四行:printf("Hello World! ");

從 stdio.h 取出 printf 這個「輸出小工具」,在螢幕列印字串——好神奇!

第五行:return (0);

系統要求 main 幹完活必須「吐」點東西回去,0 代表正常結束。但 printf 也應有返回值?暫時不知,記下來日後再解。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved