《C程序設計語言(第2版·新版)》第0章 引言

  從這篇開始,按照個人理解,整理Kernigham和Ritchie的《C程序設計語言(第2版·新版)》。程序員

0.1 C

  C很適合用來編寫編譯器和操做系統,被稱做「系統編程語言」;BCPL語言-->B語言-->C語言;   編程

  數據類型:基本(字符,多種長度整型和浮點型);派生(指針,數組,結構,聯合);表達式:運算符+操做數,總能夠做爲語句;指針:提供與具體機器無關的地址算術運算;數組

  控制流結構:語句組,條件判斷(if-else),多路選擇(switch),終止測試在頂部的循環(while, for),終止測試在底部的循環(do),提早跳出循環(break);編程語言

  函數:可返回基本、結構、聯合、指針類型;總可遞歸調用;局部變量;函數、變量做用範圍可改變;函數

  預處理:對程序文本進行宏替換、包含其餘源文件、條件編譯;工具

  C語言未提供直接處理複合對象(字符串,集合,列表、數組)的操做;除局部變量提供的靜態定義和堆棧外未定義任何存儲分配工具;未提供輸入輸出功能。全部這些高層機制必須由顯式調用函數來提供。測試

  不完美之處:某些運算符優先級不正確;某些語法還可優化優化

0.2 ANSI C的變化

  語法變化:函數聲明和定義(修改);結構賦值和枚舉定義等(新增);禁止指針和整型交換值,要求變量正確聲明和顯式強制類型轉換spa

  定義標準庫:訪問OS;格式化I/O;內存分配;字符串操做;標準頭文件(訪問函數聲明或數據類型聲明);操作系統

  提出可移植性,預設一個常量集合來描述機器特性;

0.3 本書結構

  第1章:C語言核心部分;

  2-6章:語言特性

  基本數據類型、運算符、表達式;

  控制流;

  函數和程序結構(包括外部變量、做用域規則和多源文件),以及預處理器;

  指針和地址運算;

  結構和聯合;

  7:標準庫,全部支持C的機器都支持它

  8:C與UNIX接口:I/O;文件系統;存儲分配

 

  附錄A:語言參考手冊簡潔版:給程序員看的,ANSI C是寫編譯器要看的

  附錄B:標準庫簡潔版

  附錄C:ANSI C與原始C的變動小結。標準和各個特定編譯器是解釋語言的最終權威。

相關文章
相關標籤/搜索