CSpire1.0语言参考手册.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CSpire1.0语言参考手册.doc

CSpire 1.0 语言参考手册 介绍 CSpire语言是专门为Senspire OS而设计的一种编程语言,根据无线传感器网络的应用和Senspire OS本身的特点,在综合多种现有编程语言特点的基础上设计而成。 词法和语法 注释(Comments) CSpire 的注释既可以采用传统的C风格的注释,也可以采用C++风格的注释,它们都被CSpire编译器解释为空格字符。注释中可以包含任意数量的字符: a) /* (~[*])**(~[/](~[*])* *)* / E.g.: /* a comment begins with a “/*” and ends with the first subsequent of “*/” */ b) // (~[\n, \r])* (\n|\r|\r\n) E.g.: // a comment begins with a “//” and extends up to (but does not include) the next line break 词法规则(Lexical Rules) 组成CSpire源程序的字符被CSpire编译器的词法分析器按照其词法规则组成一个个的单词(token)。CSpire的单词由八位ASCII字符组成,包括数字,整数,浮点数,character literal和字符串。CSpire的词法分析器总是试图按照从左到右的顺序从源程序中匹配出尽可能长的单词,单词与单词之间由空格字符和注释相分隔。 字符(Letter) LETTER::= [A-Z ,_ ,a-z] 数字(Digit) DIGIT ::= [0-9] 空白符(White Space) 空白符可以在词之间出现。空白是一个非空的字符串,仅仅由空格之类的字符组成,比如:space , tab , newline , return和form feed。 Whitespace ::= | \t | \n | \r 标识符(Identifier) IDENTIFIER::= LETTER (LETTER | DIGIT)* 整数(Integer Literal) 一个整数是由一个数字序列组成,表示一个数字。一个整数可以表示成十进制,十六进制,或八进制。表示如下: DECIMAL_LITERAL := [1-9] ([0-9])* HEX_LITERAL ::= 0 [x ,X] ([0-9,a-f ,A-F])+ OCTAL_LITERAL ::=0 ([0-7])* INTEGER_LITERAL ::= DECIMAL_LITERAL ([l ,L])? | HEX_LITERAL ([l ,L])? | OCTAL_LITERAL ([l ,L])? 浮点数(Floating-point Literal) 一个浮点数表示一个浮点的数。类似整数,一个浮点数可以跟一个显式的字符表示精度。 FLOATING_POINT_LITERAL ::= ([0-9])+.([0-9])*(EXPONENT)?([f ,F ,d ,D])? | . ([0-9])+ (EXPONENT)? ([f ,F ,d ,D])? | ([0-9])+ EXPONENT ([f ,F ,d ,D])? | ([0-9])+ (EXPONENT)? [f ,F ,d ,D] EXPONENT ::= [e ,E] ([+,-])? ([0-9])+ Character Literals 一个character literal是八位类型的值。它是一个ACSII字符的一个单一引用:‘a’表示十进制数字97(\a的ASCII码)。字符串‘\’必须跟随,而且是非打印字符。 CHARACTER_LITERAL ::= \ (~[\,\\,\n,\r] | \\ ([n ,t ,b ,r ,f,\\,\,\] | [0-7] ([0-7])? | [0-3] [0-7] [0-7])) \ 字符串(String Literals) 字符串是一个字符序列的缩写,只能以其初始化的值使用。一个字符串必须只包含可打印字符,并以双引号包含。每个字符是八位类型的值。 STRING_LITERAL::=\ (~[\,\\,\n,\r] | \\ ([n ,t ,b ,r ,f,\\,\,\] | [0-7] ([0-7])? | [0-3] [0-7] [0-7]))* \ 保留字(Reserved Words) 在CSpire中,包括以下保留字: //DO_WHILE, WHILE and FOR statement do while for continue break //SWITCH state

文档评论(0)

suijiazhuang2 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档