Source Insight Marco研究

Source Insight Marco研究

ID:47017561

大小:179.50 KB

页数:31页

时间:2019-06-02

Source Insight Marco研究_第1页
Source Insight Marco研究_第2页
Source Insight Marco研究_第3页
Source Insight Marco研究_第4页
Source Insight Marco研究_第5页
资源描述:

《Source Insight Marco研究》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、SourceInsightMarco研究(语法篇)SourceInsightMarco研究(语法篇)SourceInsight宏语法与C相似,编写好的宏以.em文件存储。要使用宏先需要把.em文件加入到当前工程或是Base工程中,然后为其分配一个快捷键或是菜单项,之后就可以使用键盘或是点击菜单来调用宏。si的宏语法“不是”大小写敏感的,且每行语句不强制要求以分号结束,语法元素之间的空格将被自动忽略,变量名必须以字母开头。1.宏定义方法如下,可以传递参数,可以有返回值,但和一些脚本语言一样,在si宏中没有数据类型一说。macromy_macro(a,

2、b,c){    ...       returnSourceInsightMarco研究(语法篇)SourceInsightMarco研究(语法篇)SourceInsight宏语法与C相似,编写好的宏以.em文件存储。要使用宏先需要把.em文件加入到当前工程或是Base工程中,然后为其分配一个快捷键或是菜单项,之后就可以使用键盘或是点击菜单来调用宏。si的宏语法“不是”大小写敏感的,且每行语句不强制要求以分号结束,语法元素之间的空格将被自动忽略,变量名必须以字母开头。1.宏定义方法如下,可以传递参数,可以有返回值,但和一些脚本语言一样,在si宏中

3、没有数据类型一说。macromy_macro(a,b,c){    ...       returna+b+c}2.以下代码展示了si宏的控制语句,学过C语言的人都可以很快上手。while(条件){    if(条件)    {        ...        break    }    else    {        continue    }       return0}3.以下代码展示了变量的定义macroSomeFunction(){    varlocalx                           //定义局部变量,局部

4、变量可以不定义而直接使用    globalglobalvariables;        //定义全局变量       localx=1;                            //局部变量赋值,作用域是当前macro    globalvariables="ison81"    //全局变量赋值,作用域是整个si,其它macro也可以访问} 4.以下代码展示了关于变量和数据类型的一些注意事项, a.空串{    S=nil//sissettotheemptystring    S=""  //sameasnil}b.在变量中展开

5、字符串,使用@...@S=“Hey,@username@,don’tbreakthebuildagain!”c.字符串当成数字来运算s="1"x=s+2    //xnowcontainsthestring"3"y=2*x+5//xnowcontains"11"但这样就是错的,s="hello"x=s+1//error如果要灵活,可以先检测一个字符串是不是数字,if(IsNumber(x))    x=x/4   //okaytodoarithmeticd.引用字符串中的字符,s="abc"x=s[0]    //xnowcontainsthest

6、ring"a"si的字符串也是zero-terminated,s="abc"length=strlen(s)ch=s[length]//chnowcontainstheemptystringif(ch=="")    msg"Endofstring."5.关于结构体定义Rec=nil  //initializesasanemptystringRec.name=“JoeSmith”Rec.age=“34”Rec.experience=“guru”另一种定义方法,rec=“name=”JoeSmith”;age=”34”;experience=

7、”guru””引用结构体Filename=slr.file  //getfilefieldofslrLineNumber=slr.lnFirst  //getlnFirstfieldofslr6.关于数组si宏并没有提供数组的概念,数组是通过buf来模拟实现的,关于buf还是在介绍macroAPI时再讨论。7.运算符.加减乘除(+,-,*,/).逻辑(&&,

8、

9、,!).自增自减(++,--),可前可后.算术比较(>,<,>=,<=,==,!=).字符串比较(==,!=).字符串连接(#)与引用(@...@)22:02 

10、 固定链接 

11、 sour

12、ceinsightsourceinsight研究——正则表达式篇sourceinsight研究——正则表达式篇正则表达式主

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。