c語言文法

來源:互聯網
上載者:User

標籤:寄存器   選擇語句   數列   複合   聲明   異或   字串常量   枚舉   符號   

<程式>→<外部聲明>|<程式><外部聲明>

<外部聲明>→<函數定義>|<聲明>

<函數定義>→<類型說明><聲明><複合陳述式>

<類型說明>→void|char|int |float

<聲明>→<指標直接說明符>|<直接說明符>

<指標>→’*‘|‘*‘指標

<直接說明符>→<標識符>|<直接說明符‘[’‘]’>|<直接說明符‘[’常數運算式‘]’> |<標識符‘(’參數列表‘)’>|<標識符><‘(’‘)’>>|<直接說明符><‘,‘><標識符列表>

<標識符列表>→<:標識符>|<標識符列表><‘,‘><標識符>

<常數運算式>→<條件運算式>

<參數列表>→<參數聲明>|<參數列表><‘,‘><參數聲明>

<參數聲明>→<聲明說明符><標識符>

<複合陳述式>→<‘{’><‘}’>|<‘{‘><語句列表><‘}‘>|<‘{‘><聲明列表><語句列表><‘}‘>

<聲明列表>→<聲明>|<聲明列表><聲明>

<聲明>→<初始化聲明>|<初始化聲明列表><‘,’><初始化聲明>

<初始化聲明>→<聲明>|<聲明><‘=’><初始化程式>

<初始化程式>→<賦值運算式>|<‘{’><初始化程式列表><‘}’>|<‘{‘><初始化程式列表><‘,‘><‘}‘>

<初始化程式列表>→<初始化程式>|<初始化程式列表><‘,’><初始化程式>

<語句列表>→<語句>|<語句列表><語句>

<語句>→<複合陳述式>|<運算式語句>|<選擇語句>|<迴圈語句>|<跳躍語句>

<運算式語句>→<‘;‘>|<運算式><‘;‘>

<選擇語句>→<:><if><‘(‘><運算式><‘)‘><語句>|<if><‘(‘><運算式><‘)‘><語句><else><語句>

<迴圈語句>→<while><‘(‘><運算式><‘)‘><語句>|<for><‘(‘><運算式語句><運算式語句><‘)‘><語句>|<for><‘(‘><運算式語句><運算式語句><運算式><‘)‘><語句>

<跳躍語句>→ CONTINUE< ‘;‘>| BREAK <‘;‘>| RETURN <‘;‘>| RETURN <運算式> <‘;‘>

<運算式>→<:><賦值運算式>|<運算式><‘,‘><賦值運算式>

<賦值運算式>→<條件運算式>|<一元運算式><賦值操作符><賦值運算式>

<條件運算式>→<邏輯或表達> | <邏輯或表達><‘?‘> <運算式>< ‘:‘><條件運算式>

<邏輯或表達>→<邏輯與表達> |< 邏輯或表達 或運算><邏輯運算式>

< 邏輯與表達>:<或運算式> |< 邏輯運算式 >和<運算或運算式>

< 或運算運算式>→<異或運算式> |< 或運算運算式 ><‘>|<‘>< 異或運算式>

< 異或運算式>:<與運算式> | < 異或運算式><‘^‘><與運算式>

< 與運算式>:<相等運算式> |< 與運算式><‘&‘><相等運算式>

< 相等運算式>:<關聯運算式> |< 相等運算式等於運算關聯運算式> | <相等運算式不等於運算關聯運算式>

< 關聯運算式>:<移位運算式> | <關聯運算式><‘<‘><移位運算式 >|< 關聯運算式><‘>‘><移位運算式> |< 關聯運算式小於等於運算移位運算式> |< 關聯運算式大於等於運算移位運算式>

< 移位運算式>:<加法運算式> | <移位運算式左運算加法運算式> |< 移位運算式右運算加法運算式>

< 加法運算式:<乘法運算式> |< 加法運算式><‘+‘><乘法運算式> |< 加法運算式><‘-‘><乘法運算式>

< 乘法運算式>:<強制轉換運算式> | <乘法運算式><‘*‘><強制轉換運算式> | <乘法運算式><‘/‘><強制轉換運算式 >| <乘法運算式><‘%‘><強制轉換運算式>

< 強制轉換運算式>:<一元運算式> |< ‘(‘>< 類型名稱 ><‘)‘><強制轉換運算式>

<一元運算式>:<尾碼運算式> | <INC運算一元運算式> |< DEC運算一元運算式> |< 一元運算子將運算式> | < 結構體變數的一元運算式 >| < 結構體變數的><‘(‘>< 類型名稱>< ‘)‘>

<尾碼運算式>:<基本運算式> | <尾碼運算式><‘[‘><運算式><‘]‘> |< 尾碼運算式><‘(‘ ><‘)‘> | <尾碼運算式>< ‘(‘><參數運算式列表><‘)‘ > | <尾碼運算式><‘.‘>< 標識符 >| <尾碼運算式指標運算標識符> |< 尾碼運算式INC運算> |< 尾碼運算式DEC運算>

<基本運算式>→<標識符> |<常量 >| <字串常量> | < ‘(‘><運算式><‘)‘>

<參數運算式列表>:< 賦值運算式 >| <參數運算式列表><‘,‘><賦值運算式>

<一元運算子>:< ‘&‘> | < ‘*‘> | < ‘+‘> | < ‘-‘> | < ‘~‘> |< ‘!‘>

<賦值運算子>→<‘=‘> |< 乘法分配> | <DIV分配> |< MOD分配> | <加法分配> | < SUB分配> |< 左分配 >| <右分配與分配>|< 異或分配 >|<或分配>

<儲存類說明符>→<定義類型> |< 外部變數> |< 靜態 >|< 自動> | <寄存器>

<結構或聯合說明符>:<結構或聯合標識符><‘{‘><結構體聲明列表><‘}‘> |< 結構或聯合><‘{‘><結構體聲明列表><‘}‘ > |< 結構或聯合標識符>

<結構或聯合>:<結構體> |< 聯合>

<結構體聲明列表>:<結構體聲明> |< 結構體列表聲明結構體聲明>

<結構體聲明>:<說明符限定符列表結構說明符><‘;‘>

<說明符說明符限定符列表> →<類型說明符說明符限定符列表> |< 類型說明符> |< 類型限定符說明符限定符列表 >| <類型限定符>

<結構說明符列表>→<結構體聲明> |< 結構說明符列表><‘,‘><結構體聲明>

<結構體聲明>→<:><聲明 >| < ‘:‘><常量運算式> |< 聲明><‘:‘><常量運算式>

<枚舉聲明>→<枚舉><‘{‘><列舉程式列表><‘}‘> | <枚舉標識符><‘{‘><列舉程式列表><‘}‘> | <枚舉標識符>

<列舉程式列表>→<列舉程式> | <列舉程式列表><‘,‘>

<列舉程式列舉程式>→<標識符 >|< 標識符><‘=‘><常量運算式>

<類型限定符>→<常量 >|< 易失的>

<類型限定符列表>→<類型限定符> | <類型限定符列表>< 類型限定符>

<參數類型列表>→<參數列表> | <參數列表><‘,‘><省略符號>

<參數列表>→<:><聲明參數> |< 參數列表><‘,‘><聲明參數>

<抽象說明符>→<指標> | <直接抽象說明符> | <指標直接抽象說明符>

<直接抽象說明符>→ <‘(‘> <抽象說明符 ><‘)‘ > |< ‘[‘ ><‘]‘ >| < ‘[‘>< 常量運算式><‘]‘>| <直接抽象說明符><‘[‘>< ‘]‘> | <直接抽象說明符><‘[‘>< 常量運算式>< ‘]‘> | < ‘(‘>< ‘)‘> | < ‘(‘><參數類型列表><‘)‘> |< 直接抽象說明符><‘(‘>< ‘)‘> | <直接抽象說明符><‘(‘><參數類型列表><‘)‘>

<有標號語句>→<標識符><‘:><‘語句> | <CASE常量運算式><‘:‘><語句 > | < DEFAULT><‘:‘><語句>

c語言文法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.