PowerScript 语言基础
一、标准规范
1、注释
• 以“//”开头,其后书写注释内容,常用于单行注解
• 在“/*...*/”中间的部分为注释,便于多行说明
2、标识符
• 必须以字母或下划线开头
• 最长 40 个字符,且中间不能插入空格
• 区分大小写(例如 PART,Part 和 part 是不同的)
• 标识符可以由字母、数字和如下特殊字符组成:短划线“-”、下划线“_”、美元符“$”、号码符号“#”和百分号“%”
3、空值(NULL)
• 用 SetNull 函数赋值
• 检验变量或表达式的值是否为空值应该调用 IsNull 函数
4、代名词
• 代名词 Parent :在窗口的控件、用户定制对象和菜单的程序中使用。
• 代名词 This :代表窗口、用户对象、菜单、应用对象或控件对象自身。
• 代名词 Super:使用代名词 Super 引用直接双亲,例如:CALL Super::Clicked 。
5、续行和断句
• PowerBuilder 的续行符是&。如果行尾的字符是&,则下一行为本行的继续行。
• 使用分号“;”作为语句的结尾。
6、空白(White Space)
空白包括空格、Tab 符、换行符(formfeed)和注释。除非空白被包括在引号中,否则编译器把它们看做分界符,而不考虑它们所占的空间。
二、数据类型
1、标准数据类型
PowerBuilder 常见的数据类型:
数据类型 | 简述 |
Blob | 二进制大对象,用于存储大量数据,如图像、大文本等 |
Boolean | 布尔值,TRUE 或 FALSE |
Char 或 character | 单个 ASCII 字符 |
Date | 日期,包括 4 位数的年(1000-3000),月(01-12),日(01-31) |
DateTime | 日期及时间,仅用于对数据库存取 DateTime 值时使用 |
Decimal 或 Dec | 有符号十进制数,最大 18 位宽 |
Double | 有符号浮点数,精度 15 位,范围从 2.2×10-308 到 1.7×10308 |
Long | 32 字节有符号整数,范围从-2 147 483 648 到+2 147 483 648 |
Real | 符号浮点数,精度 6 位,范围从 1.17×10-38 到 3.4×1038 |
String | 由任何 ASCII 字符组成,宽度为从 0 到 60 000 |
Time | 24 小时制时间,小时(00-23),分(00-59),秒(00-59)以及秒的小数位(最多 6 位), 范围从 00:00:00 到 23:59:59.999999 |
UnsignedInteger 或 UnsignedInt 或 UInt | 16 字节无符号整数,范围从 0 到 65 535 |
UnsignedLong 或 ULong | 32 字节无符号整数,范围从 0 到 4 294 967 295 |
PowerBuilder 支持的使用数值或字符的数据类型有:Date,Decimal,Integer,Real,String 和 Time
• Date 型数据中年月日之间用“-”分隔,例如:2001-12-25// 2001 年 12 月 25 日
• Decimal :最左侧和最右侧的数字 0 是可略去不写的,正数在数字前加注正号“+”,负数用“−”代表,如果不写,则默认为正数;
• Integer :任何整型数据,正号可以略去,例如+5 和 5 是相等的;
• Real :用科学计数法表示,也就是在一个十进制数后紧跟“E”,在“E”后紧跟一整型数;
• String 型数据须用单引号或双引号括住,最多为 1024 个字符,例如:"Hello"、"+5"、'Bye';
• Time :在小时、分、秒之间用冒号间隔,秒最多包含 6 位小数,例如:00:00:00 、10:10:30 、23:59:59.999999;
PowerBuilder 提供两种处理字符型数据的数据类型:Char 和 String
• Char 仅保存一个字符,String 则包含一串字符。
2、Any 类型
持Any 数据类型,可以保存任何类型的数据,主要包括标准数据类型、对象、结构以及数组类型。Any 类型的变量像是一个“变色龙”——能够和赋给它的任何类型的数据相匹配。不建议使用。
3、系统对象数据类型
在 PowerBuilder 的应用中,能够使用诸如窗口、菜单、命令按钮、列表框和图表等对象,它们就是系统对象。每一种系统对象实际是定义在 PowerBuilder 内部的一种数据类型。
4、枚举类型
枚举类型只能在 PowerScript 中使用。枚举类型可作为函数的参数,也能用于指定对象或控件的属性。枚举变量可以被赋予一组固定的值,这组值通常以!作为结尾标记。