PowerBuilder学习笔记之2PowerScript语言(二)
z教材地址:https://wenku.baidu.com/view/1e82d26925c52cc58ad6be05.html?sxts=1565679996440
2.4数组
声明数组:Integer elem[30] //声明了整形数组elem,他有30个元素,下标从1-30
Integer number[3 to 10] //下标从3变化到10,共8个元素。
p[10]=5 //将p数组的第10个元素赋值为5
char array_a[10,10] //声明一个二维数组,共10*10 个元素
声明的同时赋值:real array_c={1,2,3,4,5}
2.5PowerScript语句
PowerScript语句用于控制程序的流程,主要有赋值语句、分支语句、循环语句等。
2.5.1赋值语句
用于为变量、对象属性赋值,格式:
variable_name=expression //variable_name 代表变量名称,expression 代表表达式
例如:area=3.14*r*r
Int s[]
s={1,2,3,4}
String s='吞吞吐吐'
2.5.2分支语句
1.IF 语句
单行: IF condition THEN ... ELSE ... //THEN必须和IF一行
多行: IF condition THEN
...
ELSE
...
END IF
2.CHOOSE 语句
CHOOSE CASE test_expression
CASE expression_list1
Statements1
CASE expression_list2
Statements2
⋮
CASE expression_listn
Statementsn
{ CASE ELSE
Statementsn+1}
END CHOOSE
其中,expression_list形式如下。
单个值。
由逗号隔开的若干个值。
某一区间,如1 to 8, 'b' to 'h'。
IS表达式,如IS>30 //IS是保留字,代表test_expression的值。
混合,如2,4,7 to 15,IS>20。
2.5.3循环语句
1.FOR循环
FOR…NEXT语句按照预先规定的次数重复执行一段代码。
格式:
FOR v= s TO e {STEP i }
...
NEXT
FOR…NEXT语句的执行过程如上所示。图中“超过”的含义是,当步长大于零时,表示“大于”;
当步长小于零时,表示“小于”。若不指定步长,则步长为1。步长是零时为死循环,步长由STEP指定。
2.DO...LOOP循环
DO…LOOP循环是重复执行一段代码,直到条件表达式为True或False,它有四种格式。
格式1:
DO UNTIL condition
...
LOOP
当条件为False时,执行循环体;当条件为True时,退出循环。其功能和执行过程如下图所示。
格式2:
DO WHILE condition
...
LOOP
当条件为True时,执行循环体;当条件为False时,退出循环。其功能和执行过程如下图所示
格式3:
DO
...
LOOP UNTIL condition
创建工作空间和应用程序,首先执行循环体,然后判断条件。当条件为False时,执行循环体;当条件为True时
,退出循环。格式3和格式1的区别是,格式3的循环体至少执行一次。其功能和执行过程如下图所示
格式4:
DO
...
LOOP WHILE condition
首先执行循环体,然后判断条件。当条件为True时,执行循环体;当条件为False时,退出循环。
格式4和格式2的区别是,格式4的循环体至少执行一次。其功能和执行过程如下图所示。
2.5.4CONTINUE语句
CONTINUE语句只能用于DO…LOOP和FOR…NEXT语句中,遇到CONTINUE语句时,将不执行CONTINUE语句后面的语句,跳回到循环条件处继续执行。
2.5.5EXIT 语句
EXIT语句只能用于DO…LOOP和FOR…NEXT语句中,遇到EXIT语句时,直接结束循环,执行后续代码。
2.5.6 RETURN
RETURN(返回值)
2.5.7HALT语句
格式:HALT{CLOSE}
说明:HALT语句结束当前的PB应用程序(Application)
HALT CLOSE 语句先触发当前的PB应用程序对象的Close事件,然后再结束当前的应用程序。
2.5.8 GOTO语句
格式:GOTO标号
说明:若程序执行到GOTO语句,则跳转到标号处继续执行,不建议使用。
PowerBuilder学习笔记之2PowerScript语言(二)的更多相关文章
- PowerBuilder学习笔记之2PowerScript语言(三)
教材地址:https://wenku.baidu.com/view/1e82d26925c52cc58ad6be05.html?sxts=1565679996440 2.6嵌入式SQL语句 2.6.1 ...
- PowerBuilder学习笔记之2PowerScript语言(一)
教材链接:https://wenku.baidu.com/view/1e82d26925c52cc58ad6be05.html?sxts=1565679996440 2.1PowerScript基础 ...
- Java菜鸟学习笔记--数组篇(三):二维数组
定义 //1.二维数组的定义 //2.二维数组的内存空间 //3.不规则数组 package me.array; public class Array2Demo{ public static void ...
- JavaScript学习笔记之数组(二)
JavaScript学习笔记之数组(二) 1.['1','2','3'].map(parseInt) 输出什么,为什么? ['1','2','3'].map(parseInt)//[1,NaN,NaN ...
- vue2.0学习笔记之路由(二)路由嵌套+动画
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- vue2.0学习笔记之路由(二)路由嵌套
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 23 DesignPatterns学习笔记:C++语言实现 --- 2.7 Proxy
23 DesignPatterns学习笔记:C++语言实现 --- 2.7 Proxy 2016-07-18 (www.cnblogs.com/icmzn) 模式理解
- 23 DesignPatterns学习笔记:C++语言实现 --- 2.6 Facade
23 DesignPatterns学习笔记:C++语言实现 --- 2.6 Facade 2016-07-22 (www.cnblogs.com/icmzn) 模式理解
- 23 DesignPatterns学习笔记:C++语言实现 --- 2.5 Factory
23 DesignPatterns学习笔记:C++语言实现 --- 2.5 Factory 2016-07-18 (www.cnblogs.com/icmzn) 模式理解 1. Flyweight ...
随机推荐
- Java利用FastJson一行代码转List<Map>为List<Bean>
/** * 字符串 -> json对象.实体对象.Map.List.List<Map> */ // 字符串 -> json对象 JSONObject json = JSON.p ...
- Java TreeMap使用
场景: 随机生成50个10到50的数字.然后顺序输出每个数字出现的次数 实现原理: 使用TreeMap,默认带了顺序排序的功能 public static void main(String[] arg ...
- 将移远通信的EC20驱动移植到NUC972上(转)
源: 将移远通信的EC20驱动移植到NUC972上
- System.Net.WebRequest.cs
ylbtech-System.Net.WebRequest.cs 发出对统一资源标识符(URI)的请求.这是一个 abstract 类. 1.返回顶部 1. #region 程序集 System, V ...
- typescript装饰器定义 类装饰器 属性装饰器 装饰器工厂
/* 装饰器:装饰器是一种特殊类型的声明,它能够被附加到类声明,方法,属性或参数上,可以修改类的行为. 通俗的讲装饰器就是一个方法,可以注入到类.方法.属性参数上来扩展类.属性.方法.参数的功能. 常 ...
- Python3基础 global 在函数内部对全局变量进行修改
Python : 3.7.3 OS : Ubuntu 18.04.2 LTS IDE : pycharm-community-2019.1.3 ...
- Python 线程,with的作用(自动获取和释放锁Lock)
Python 线程,with的作用(自动获取和释放锁Lock) import threading import time num= #全局变量多个线程可以读写,传递数据 mutex=threading ...
- netty5心跳与业务消息分发实例
继续基于我们之前的例子(参见netty5自定义私有协议实例),这次我们加上连接校验和心跳机制: 只要校验通过,客户端发送心跳和业务消息是两个不同的事件发送的,彼此互不干扰.针对以上流程,我们需要增加4 ...
- TLS握手协议分析与理解——某HTTPS请求流量包分析
https://xz.aliyun.com/t/1039 HTTPS简介 HTTPS,是一种网络安全传输协议,在HTTP的基础上利用SSL/TLS来对数据包进行加密,以提供对网络服务器的身份认证,保护 ...
- Windows下MariaDB数据库安装图文教程
MariaDB是基于MySQL的开源数据库,兼容MySQL,现有的MySQL数据库可以迁移到MariaDB中使用 说明: MariaDB是基于MySQL的开源数据库,兼容MySQL,现有的MySQ ...