C語言語法文字結構—接近完整版本

Mr.P發表於2014-02-02

C語言語法文字佈局

•預處理命令 《以後詳細補上》

•程式結構文字

  -函式宣告
         引用本翻譯單元定義函式
         引用另翻譯單元定義函式
  -資料宣告
         全域性變數的定義
         全域性變數的引用
         其它資料宣告
  -型別名定義typedef《以後詳細不上》
  -註釋(/*可跨行…*/;//…不可跨行)
  -函式定義
         連結型別  返回值型別  函式識別符號(形式引數){程式塊}
            |——連結型別說明

(外部翻譯單元可引用extern、不可引用static,預設則為可引用)

                     |——返回值型別說明

(基本資料型:整型、浮點型、字元型、列舉型別;結構體型別、共用體型別、指標型別、void類;返回值必須是一個確定的值,它可以是值是上述型別的表示式)

                                |——函式識別符號說明

(由字母、數字、下劃線構成,必須以字母開頭,否則會產生名字衝突)

                                          |——形式引數說明

(資料的宣告:全域性變數為靜態儲存型別,區域性變數可以為靜態儲存型別,此時需要在宣告中使用關鍵字static,形式引數只能是動態儲存型別,不能使用靜態儲存;如果在全域性變數定義中使用關鍵字static,則說明這個變數只能在其所在翻譯單元內引用使用,預設則為全域均可引用;動態儲存型別:記憶體型別auto、暫存器型別register;運用const宣告可以將變數物件限制為不能通過顯示引用變數名來更改其值,還有其它一些與具體實現有關的類似關鍵字;資料型別;變數識別符號)

                                                |——程式塊說明

(由宣告、語句構成:內部宣告與外部宣告規則型別相同;語句:帶標號語句、表示式語句、跳轉語句、選擇語句、循壞語句、複合語句)

帶標號語句:

         識別符號:語句(goto語句跳轉目標)
         case  任意整型常量表示式:語句(swicth語句分支進入點)
         default:語句(swicth語句分支不匹配進入點)

選擇語句:

         if(表示式)語句
         if(表示式)語句 else 語句
         swicth(整型值表示式)語句

循壞語句:

         while(表示式) 語句
         do 語句 while(表示式);
         for(可選表示式;可選表示式;可選表示式)語句

跳轉語句:

         goto 識別符號;(作用域為當前函式,可與if 語句構成迴圈)
         continue;(僅用於迴圈語句,跳出最內層本次循壞)
         break;(僅用於迴圈語句,跳出最內層迴圈;用於跳出swicth語句)
         return 可選表示式;(將控制返回撥用函式,把表示式的值返回)

表示式語句:

         可選表示式;《以後詳細補上》

複合語句:

       {可選資料宣告 可選語句}

以上已經給出所有構成C語言語法文字的元素,任何C語言的原始檔編寫,不論簡單的C程式,還是工業級別的工程級C程式。為了更加詳細說明一些細節,我準備了一下專題討論話題的詳細講解。

C語言資料型別的超詳細描述:(包括關鍵字的給出、所有型別的給出、宣告形式、)《以後補上》

有關具體實現的細節描述:《以後補上》

怎樣安排構建C程式文字的方法建議:《以後補上》

通過回顧C語言的整體結構與程式文字的構成,以及細節的詳細明確,力圖畫出一副清晰可見的C語言完整圖畫,初學者可以少走彎路,熟悉者可以補充完整,使其更加完美,在此貼出歡迎各位C語言大蝦共同補充完整或指出問題。

相關文章