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

C 語言基礎知識體系:從發展史到詞法規範的完整入門指南

     編輯:關於C語言

C 語言發展脈絡

階段時間關鍵事件
誕生1972貝爾實驗室丹尼斯·里奇基於 B 語言開發,服務 UNIX 系統重寫
K&R C1978《The C Programming Language》出版,成事實標準
ANSI C (C89)1989美國國家標準協會制定首個正式標準
ISO C (C90)1990國際標準化組織採納 ANSI C
C991999增加內聯函數、可變長數組、長長整型、單行註釋等
C112011多線程支援、原子操作、泛型選擇、邊界檢查接口
C17/C182017/2018修正版,無新特性
C232023最新標準:nullptr、typeof、屬性語法、編譯期斷言等

C 語言核心特點

  • 結構化:模塊化組織、易調試維護。
  • 表現力強:豐富運算符/數據類型、支援複雜數據結構。
  • 底層訪問:直接操作內存地址、位級運算、硬件編程。
  • 雙重身份:兼具高級語言抽象與低級語言控制力。
  • 高效、可移植:編譯生成機器碼,跨平台適配性極強。

編程風格規範(養成良好習慣)

  1. 一條語句/聲明佔一行。
  2. {} 獨佔一行,與所屬結構語句首字母對齊。
  3. 層級縮進(4 空格/1 Tab),清晰體現控制流層次。
  4. 命名語義化:max_retry_count 優於 mrc。

C 語言字符集

  • 字母:a-z, A-Z(52個)
  • 數字:0-9(10個)
  • 空白符:空格、制表符 \t、換行符 \n、回車 \r、換頁 \f、垂直製表 \v。除字符/字符串常量外,編譯器忽略空白符,僅作分隔。
  • 標點與特殊字符:~ ! @ # $ % ^ & * ( ) - _ + = { } [ ] | \ : ; " ' < > , . ? / 等。

C 語言詞法六大類

類別定義與規則示例
標識符字母/數字/下劃線組成,**首字符必須為字母或下劃線**;大小寫敏感;標準 C 不限長度(編譯器實現有限制)sum5, _3x, BOOK_1 合法;3s, s*T, -3x 非法
關鍵字語言保留字,具特定語義,不可作標識符。分類:類型說明符、語句定義符、預處理命令字等int, if, else, for, while, return, sizeof, struct, union, enum, const, static, extern, void 等
運算符1個或多個字符組成,與運算元構成表達式+, -, *, /, %, ++, --, ==, !=, &&, ||, !, &, |, ^, ~, <<, >>, =, +=, -=, *=, /=, %=, ,, ?: , sizeof, ., ->, [], ()
分隔符逗號 ,(參數/聲明分隔)、空格(詞法分隔)int a, b; if (x > 0)
常量數字常量、字符常量 'a'、字符串常量 "hello"、符號常量 #define、轉義字符 \n, \t, \\123, 3.14, 'A', "C", MAX_SIZE
註釋符/* ... */(C89 標準),// ...(C99+)。可嵌套?不可嵌套。調試時可暫時註釋代碼塊/* 這是註釋 */ // 單行註釋

標識符命名黃金法則

  1. 見名知意:user_count 而非 uc。
  2. 統一風格:項目內統一 snake_case / camelCase / PascalCase。
  3. 避免保留標識符:雙下劃線開頭 __xxx、下劃線+大寫開頭 _Xxx 為編譯器/標準庫保留。
  4. 作用域越小名字越短:迴圈變量 i, j, k 可接受;全局/類成員必須語義完整。

總結

C 語言基礎知識體系涵蓋歷史演進、語言特性、編碼規範、字符集、詞法六大類。扎實掌握詞法規則(特別是標識符命名、關鍵字分類、運算符優先級、常量形式)是閱讀、編寫、調試 C 代碼的語法基石。建議配合經典教材《C程序設計語言》(K&R)、《C Primer Plus》系統學習,並在實戰項目中強化編程風格與命名規範。

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