ON STRZ PL/1 怎么使用
时间: 2024-01-09 22:04:08 浏览: 75
ON STRZ是PL/1语言中的一个关键字,用于在字符串中查找子字符串并返回其位置。使用ON STRZ的基本语法如下:
```
ON STRZ(substring, string) LABEL(label);
```
其中,substring是要查找的子字符串,string是要搜索的字符串,label是一个可选的标签,用于指定搜索成功时跳转到的位置。
例如,以下代码使用ON STRZ查找字符串"hello"在字符串"hello world"中的位置:
```
DCL 1 string CHAR(20) INIT('hello world');
DCL 1 pos FIXED BIN(31);
ON STRZ('hello', string) LABEL(found);
pos = 0;
PUT SKIP LIST 'Substring not found';
GO TO end;
found:
pos = STRPOS(string, substring);
PUT SKIP LIST 'Substring found at position ' pos;
end:
```
在这个例子中,程序首先定义了一个20个字符长度的字符串变量string,并将其初始化为"hello world"。然后,程序使用ON STRZ查找字符串"hello"在string中的位置,并将结果存储在pos变量中。如果搜索成功,则程序跳转到标签found处,输出子字符串在字符串中的位置;否则,程序输出"Substring not found"。最后,程序跳转到标签end处,结束执行。
需要注意的是,ON STRZ语句只能在PL/1程序中使用,不能在JCL或其他上下文中使用。另外,在使用ON STRZ时,需要保证substring和string变量的长度正确,否则可能会导致搜索失败或返回错误的位置。
阅读全文