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 ...
随机推荐
- VS2017打包注册IE插件及修改IE安全选项设置【转】
前言 最近项目需要在浏览器环境下读取员工身份证信息,要实现网页与硬件设备通信,考虑了几种实现方式: 1.借助ActiveX插件,通过程序库直接与设备通信. 优点:厂家提供了IE插件,开发简单 缺点:只 ...
- SpringBoot整合Quartz和H2的例子
话不多说,直接上代码: pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xml ...
- 网站无法连接上,但能上QQ的解决办法
一句话:修改DNS的IP地址 参考win10修改IP地址:https://jingyan.baidu.com/article/19192ad8eef0c9e53e570717.html 在网络上搜索合 ...
- Java Sound : audio inputstream from pcm amplitude array
转载自:http://ganeshtiwaridotcomdotnp.blogspot.com/2011/12/java-sound-making-audio-input-stream.html In ...
- fa-list-alt
你可以用 <i> 标签把 Font Awesome 图标放在任意位置. <i class="fa fa-list-alt" aria-hidden="t ...
- 压力测试 Apache ab
https://www.jianshu.com/p/166a4ea8aade https://httpd.apache.org/docs/2.4/programs/ab.html 安装: 按照提示安装 ...
- C#操作IIS程序池及站点的创建配置实现代码
首先要对Microsoft.Web.Administration进行引用,它主要是用来操作IIS7: using System.DirectoryServices;using Microsoft.We ...
- iOS 多线程的简单理解(1) 方式 :同步 异步
最近遇到特别糟糕的面试,过程中提到多次对多线程的处理问题,并没有很好的给予答复和解决,所以在这里做个简单的备案: 期望能更加了解和熟练使用 多线程技术: 下面都是自己的总结,如果存在不对的,或者不足, ...
- skynet sproto 问题
刚碰到一个小细节,纠结了半个小时 sproto的协议,request 和{ 必须有空格
- 非常好用的JavaScript 工具库--lodash
一.什么是lodash? lodash库是一个具有一致接口.模块化.高性能等特性的 JavaScript 工具库. lodash是一个javascript库,也是Node JS的常用模块,它内部封装了 ...