PowerScript语言基础
注释:
以 "//" 开头,其后书写注释内容,常用于单行注释。
“/…/”中间的部分为注释,便于多行说明。
//这是一个单行注释
INTEGER I
I = I+1
/*这是多行注释
这是多行注释
这是多行注释
这是多行注释*/
标识符
标识符是指在脚本中使用的变量、标号、窗口、控制、菜单以及引用的对象的名称。它的命名规则有:
必须以字母或下划线开头
最长40个字符,并且中间不能插入空格。
区分大小写(例如PART,Part和part是不同的),不过在实际编程中尽量不要出现大小写不同,但实际意义一样的标识符,以免混淆。
标识符可以有字母、数字和如下的特殊字符组成:短划线“-”、下划线“_”、美元符号“$”,号码符号“#”和百分符号“%”。要注意,在使用减号和‘--’操作符时,需要在它们前后加空格,否则将可能把表达式看做标识符。
例如:butName,main_win,code2都是合适的标识符。
特殊ASCII字符
在字符串当中可以包括特殊字符。它们的写法如下:
新行(NEWLINE):~n
制表符(TAB):~t
垂直制表(VERTICAL TAB):~v
回车(CARRIGE RETURN):~r
换行(FORMFEED):~f
退格(BACKSPACE):~b
双引号:~
单引号:~
弯曲符:~~
也可以使用在符号的后面跟上一个数的方式来表示这个数值对应的ASCII字符。如888,h16(十六进制),o999(八进制)。
空值(NULL)
空值(NULL)是在与数据库交换数据的时候使用的一种特殊值。这与空字符、数值零、和日期00000000不同。空值既不是零,也不是非零的任何数值。
●为变量赋空值的途径有两条:(1)从数据库中读到空值;(2)用SetNull函数赋值。例如:
string beijing //beijing = ""
setNull(beijing) //beijing 为NULL
●在表达式或函数中使用空值时应注意:其参数值为空值的任何函数的返回值为空值,其值为空值的任一表达式的结果为空值
this
代名词this代表窗口、用户对象、菜单、应用对象或者控制对象自身。比方说,在一个静态文本控件的脚本中敲入这样的代码:
this.Modify(text=您好),静态文本上面的文本就会改变为“您好”。
Parent
Parent可以在窗口的控制、用户定制对象和菜单的程序中使用。当在窗口的控制当中使用Parent的时候,Parent指向包容该控制的窗口。比方说如果把下面的语句写入某窗口的一个按钮的CLICKED事件的脚本当中的话,那么在用户单击这个按钮的时候,就会关闭这个窗口。
ParentWindow
ParentWindow只能在菜单的脚本当中使用,它代表运行时菜单所在的窗口,例如:在一条菜单命令的脚本中输入这样的代码的话将会关闭菜单所在的窗口。
Super
在编写控制或者对象的子对象的脚本的时候,可以调用祖先的脚本,用户可以直接使用祖先对象的名称调用它们,也可以使用Super来引用直接双亲。例如要调用父类的Clicked脚本可以这样写:
CALL Super::Clicked
需要注意的是,用户只能在祖先的直接后代的函数和事件当中使用Super,否则编译器将返回语法错误。并且我们只能在子类窗口的事件脚本或者函数当中使用Super,而不能在子类窗口的控制当中使用Super ,否则编译器也将产生语法错误。
续行和断句
大多数情况之下,每一条语句占据一行,可以有的时候会遇到语句超长或者希望多写几行的情况,这时就需要用到续行符&如果行尾的字符恰好是&,那么下一行自动是本行的继续行。
例子:
IF num1 = 5 AND &
num2 = 6 THEN num3 = 7
如果要将一个长字符串分为多行的时候,仅仅需要在行末加入&,编译器就会认为下一行的内容也是这个字符串的内容。
例子:
astring = abcdefghi&
jklmnopqrstuvwxyz
需要注意的是使用这种方法将会把续行符前面的和继续行初始处的空格或者TAB都作为字符串的的一部分,如果希望避免这种情况,可以使用下面的这种格式:
astring = abcdefghi&
+jklmnopqrstuvwxyz
空白
空白包括空格、Tab符、换行符和注释。除非空白被包括在引号中,否则编译器把它看做分界符,而不考虑它们所占的空间,例如:
A + B /这是white space,不被考虑/ + C
" The value of A + B is " //其中空格逐字考虑
PowerScript语言基础的更多相关文章
- 《MSSQL2008技术内幕:T-SQL语言基础》读书笔记(下)
索引: 一.SQL Server的体系结构 二.查询 三.表表达式 四.集合运算 五.透视.逆透视及分组 六.数据修改 七.事务和并发 八.可编程对象 五.透视.逆透视及分组 5.1 透视 所谓透视( ...
- 《MSSQL2008技术内幕:T-SQL语言基础》读书笔记(上)
索引: 一.SQL Server的体系结构 二.查询 三.表表达式 四.集合运算 五.透视.逆透视及分组 六.数据修改 七.事务和并发 八.可编程对象 一.SQL Server体系结构 1.1 数据库 ...
- C#语言基础
第一部分 了解C# C#是微软公司在2000年7月发布的一种全新且简单.安全.面向对象的程序设计语言,是专门为.NET的应用而开发的.体现了当今最新的程序设计技术的功能和精华..NET框架为C#提供了 ...
- C语言基础回顾
第一章 C语言基础 1. C语言编译过程 预处理:宏替换.条件编译.头文件包含.特殊符号 编译.优化:翻译并优化成等价的中间代码表示或汇编代码 汇编:生成目标文件,及与源程序等效的目标的机器语言代码 ...
- 黑马程序员_ C语言基础(二)
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 概览 今天基础知识分为以下几点内容(注意:循环.条件语句在此不再赘述): 1.Hello W ...
- C#语言基础— 输入与输出
C#语言基础— 输入与输出 1.1函数的四要素:名称.输入.输出.加工 1.2主函数:输出语句.输入语句: Static viod Main(string[] stgs)//下划线部分可以自己指定 { ...
- 【GoLang】GO语言系列--002.GO语言基础
002.GO语言基础 1 参考资料 1.1 http://www.cnblogs.com/vimsk/archive/2012/11/03/2736179.html 1.2 https://githu ...
- R语言基础:数组&列表&向量&矩阵&因子&数据框
R语言基础:数组和列表 数组(array) 一维数据是向量,二维数据是矩阵,数组是向量和矩阵的直接推广,是由三维或三维以上的数据构成的. 数组函数是array(),语法是:array(dadta, d ...
- OC语言基础知识
OC语言基础知识 一.面向对象 OC语言是面向对象的,c语言是面向过程的,面向对象和面向过程只是解决问题的两种思考方式,面向过程关注的是解决问题涉及的步骤,面向对象关注的是设计能够实现解决问题所需功能 ...
随机推荐
- python:文件的逐行操作
逐行遍历文件: 方法一:一次读入,分行处理: readlines() 缺点:一次读入所有信息,对于大文件来说会消耗很多计算机内存 fname = input('请输入要打开的文件名称:') fo = ...
- win 10 kms 激活 后 火狐 上 https 网站 报错
原因: 系统导入了未知的根证书 影响:?? 解决方法: http://mozilla.com.cn/thread-374897-1-1.html
- visual studio2017----编码和行尾
在 Visual Studio 中,以下字符将解释为换行符: CR LF:回车符 + 换行符,Unicode 字符 000D + 000A LF:换行符,Unicode 字符 000A NEL:下一行 ...
- Mysql常见的优化策略
数据库设计方面优化 1.数据库设计符合第三范式,为了查询方便可以有一定的数据冗余.2.选择数据类型优先级 int > date,time > enum,char>varchar &g ...
- mongodb集群配置主从模式
测试环境 操作系统:CentOS 7.2 最小化安装 主服务器IP地址:192.168.197.21 master-node 从服务器IP地址:192.168.197.22 slave-node 关闭 ...
- Qt配置cmake;运行带参数的程序
配置cmake编译器,步骤如下: 步骤1: Qt下新建一个project. 步骤2: 在该project目录下创建一个CMakeLists.txt文件,并按规范编写该文件. Tip: projec ...
- 执行sql语句为什么?用PreparedStatement要比Statement好用
PreparedStatement public interface PreparedStatement extends Statement;可以看到PreparedStatement是Stateme ...
- 自己动手开发智能聊天机器人完全指南(附python完整源码)
一.前言 人工智能时代,开发一款自己的智能问答机器人,一方面提升自己的AI能力,另一方面作为转型AI的实战练习.在此把学习过程记录下来,算是自己的笔记. 二.正文 2.1 下载pyaiml 下载pya ...
- Ubuntu 14.10 下安装Ambari 问题汇总
在编译安装Ambari时候遇到了很多问题,现在记录一下 1 got error npm ERR! phantomjs@1.9.12 install while building ambari-web ...
- C++Primer第五版——习题答案详解(九)
习题答案目录:https://www.cnblogs.com/Mered1th/p/10485695.html 第10章 泛型算法 练习10.1 #include<iostream> #i ...