• 1029 C语言文法


    <程序> ->  <外部声明> |  <程序>  <外部声明>

    <外部声明>  ->   <函数定义>  |  <声明>

    <函数定义>  ->  <说明符类型>  <声明> <复合语句>

    <说明符类型>  ->  <空类> | <字符型> |  <浮点型>

    <声明> ->  <指针>  <直接说明符>  |  <直接说明符>

    <指针> -> <*> | <*指针>

    <直接说明符>  -> <标识符>  |  <直接说明符  '['  ']'>   |  <直接标识符'[' 恒表达式 ']'>  |  <标识符'(' 参数名单 ')'>  |  <标识符'('  ')'>  |  <直接说明符 ';' 识别名单>

    <识别名单> -> <标识符> |  <识别名单 ';' 标识符>

     <恒表达式> -> <恒表达式>

    <参数名单> -> <参数声明> | <参数名单 ';' 参数声明>

    <参数声明> -> <声明标识符> | <标识符>

    <复合语句> -> <'{' '}'> | <'{'语句名单'}'> | <'{'识别名单 语句名单'}'>

    <识别名单> -> <识别符> | <识别名单  识别符>

    <识别符> -> <初始化标识符> | <初始化标识符  ';'  初始化标识符>

    <初始化标识符> -> <标识符> | <标识符 '=' 初始化器>

    <初始化器> -> <任务表达式>  | <'{' 初始化列表  '}'> | <'{'  初始化列表 '}'>

    <初始化列表> -> <初始化器> |<初始化列表 ';' 初始化器>

    <语句表> -> <语句> | <语句表  语句>

    <语句> -> <复合语句> | <语句表达式> | <选择语句> | <迭代语句> | <跳转语句>

    <语句表达式> -> <表达式>

    <选择语句> -> < : IF'(' 表达式 ')' 语句> |<IF '(' 表达式 ')' 语句 ELSE 语句>

    <迭代语句> -> <WHILE '(' 表达式 ')' 语句> | <FOR'(' 表达语句  表达语句 ')' 语句> | <FOR'(' 表达语句 表达语句 ')' 语句>

    <跳转语句> -> <CONTINUE> | <BREAK> | <RETURN> | <RETURN 表达式>

    <表达式> -> <:复制表达式> | <表达式 ';' 复制表达式>

    <赋值表达式> -> <条件表达式> | <一元赋值 运算符表达式 赋值表达式>

  • 相关阅读:
    T4 (Text Template Transformation Toolkit)
    GUI Design Studio
    51劳有所获 54务实青年
    [书目20110502]把时间当作朋友
    Rdlc子报表的动态添加
    [转]更新Android SDK到3.0版本时,遇到Failed to rename directory E:\android\tools to E:\android\temp\ToolPackage.old01问题
    JSON
    javascript 特征侦测技术
    IE的setAttribute bug
    将"类数组对象"转换成数组对象
  • 原文地址:https://www.cnblogs.com/hanqilin/p/4921210.html
Copyright © 2020-2023  润新知