- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下 PL/I 代码:
declare 1 u union,
2 c character(1),
2 ci fixed binary(4) unsigned;
ci = data_mem(data_ptr);
put list (c);
它的作用是接受一个整数并输出它,就像它是一个 ascii/ebcdic 值一样。所以它显示了字符。到目前为止这有效。现在的问题是每个字符以24个空格间隔打印,就好像插入了3个TAB一样。我尝试先将 c 转换为字符串,然后应用 trim() 但这没有帮助。
有什么想法吗?
最佳答案
这是 PRINT 属性文件的默认 PUT LIST 行为。来自 IBM Enterprise PL/I for z/OS Language Reference,在面向流的数据传输 -> LIST -> PUT list-directed(强调我的)下:
The values of the data-list items are converted to character representations (except for graphics) and transmitted to the data stream. A blank separates successive data values transmitted. For PRINT files, items are separated according to program tab settings (see “PRINT attribute”).
下一个手册部分将讨论 PRINT 属性。这里我们有
Data values transmitted by list- and data-directed data transmission are automatically aligned on the left margin and on implementation-defined preset tab positions.
由于您省略了 FILE,因此您的 PUT 将转到默认 FILE(SYSPRINT)。 SYSPRINT 隐式定义为 FILE ENVIRONMENT(F RECSIZE(121)) OUTPUT PRINT STREAM(请参阅语言引用中的输入和输出 -> 文件属性 -> 文件常量,以及定义和使用连续数据集 -> 将 PRINT 文件与流 I 一起使用程序员指南中的/O)。 IIRC,默认值是每 24 个,每行 5 个选项卡,与 20 世纪 60 年代末 PL/IF 早期常见的旧 120 字节打印机兼容。这可以通过声明 PLITABS 结构来修改(在前面提到的手册部分中描述)。
LIST 和 DATA 导向的 I/O 旨在成为快速且肮脏的 I/O 接口(interface),很少考虑输出格式(但对输入非常宽容)。 EDIT 更适合格式化输出,但它确实显示了许多用于输入和输出的 FORTRAN 根源。就我个人而言,对于使用格式化输出的传统报告以及记录输入,我会使用记录 I/O,这类似于标准 COBOL I/O。
关于mainframe - PL/I 且不在制表位上打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42145253/
我在 PyQt5 代码中遇到错误。谁能帮我。 import sys from PyQt5.QtWidgets import QApplication from PyQt5.QtCore import
我想编写一些 JCL 来创建一个数据集,其要求是: 如果数据集不存在,则创建它 或者: 如果数据集已经存在,覆盖它 或 如果数据集已经存在,什么也不做 据我所知,(1) 可以通过 DISP=NEW 来
我正在使用下面的 jcl 代码创建 pds,但出现错误 000001 //HERC01A JOB (COBOL),
问题 我的 COBOL 编译器中的链接编辑步骤到底是做什么的? 编译代码后,执行链接编辑步骤。我不确定这一步是做什么的。 背景资料 刚从学校毕业(3 年前),我就找到了一份大型机应用程序开发人员的工作
似乎老铁是坚如磐石的软件。这是为什么?是不是因为软件太成熟了,所有的bug都解决了?还是因为人们已经习惯了这些错误,以至于他们甚至不认识它们并解决它们?软件规范是否从第一天开始就完美,一旦软件编写完成
在我的站点上,一种实践是当一个批处理周期开始时,我们在运行任何程序之前分配所有将在整个运行中使用的所有GDG的新一代。 这意味着我们现在遇到的情况是,甚至在我们的流程开始之前就分配了500多个文件。我
我们可以在Mainframe中用另一个字符串替换部分数据吗?例如假设我有一个长度为 80 的 PS。从第 72 栏到第 80 栏存在一些行号。我想通过特定的字符串(例如 TEST)更改这些行号。我们可
我尝试提交作业,当我进行硬编码时,一切都很好。但我想使用参数。 //REPORTS EXEC PGM=IKJEFT01,**PARM='SDSFINFO FTPSRV01 * hiqual'**
我正在尝试使用以下公式计算数据集所需的空间,但是当我将它与系统中的现有数据集进行交叉检查时,我在某处出错了。请帮助我 第一个数据集:记录格式。 . . : 语言 记录长度。 . . : 445 blo
我尝试提交作业,当我进行硬编码时,一切都很好。但我想使用参数。 //REPORTS EXEC PGM=IKJEFT01,**PARM='SDSFINFO FTPSRV01 * hiqual'**
我正在尝试使用以下公式计算数据集所需的空间,但是当我将它与系统中的现有数据集进行交叉检查时,我在某处出错了。请帮助我 第一个数据集:记录格式。 . . : 语言 记录长度。 . . : 445 blo
在执行一个 Proc 时,我收到“GDG Roll In Error”。错误消息显示 'IGD07001I GDG ROLL IN ERROR -RETURN CODE 20 REASON CODE
我有以下 PL/I 代码: declare 1 u union, 2 c character(1), 2 ci fixed binary(4) unsigned;
我正在尝试使用 DFSORT 实用程序对文件进行排序,JCL 使用代码 maxcc=00 成功运行,但我得到的输出文件是空的,请帮助我, 我的输入文件 02AAP0000007010500001901
有人问我这个问题,但我无法就这是否正确达成一致。 如果说 JES 不启动启动器而工作负载管理器启动,这是否属实? 我认为从 JES 接收作业的不活跃启动器是 JES 启动的启动器,这是正确的吗? 我很
在执行一个 Proc 时,我收到“GDG Roll In Error”。错误消息显示 'IGD07001I GDG ROLL IN ERROR -RETURN CODE 20 REASON CODE
我有以下 PL/I 代码: declare 1 u union, 2 c character(1), 2 ci fixed binary(4) unsigned;
我正在尝试使用 DFSORT 实用程序对文件进行排序,JCL 使用代码 maxcc=00 成功运行,但我得到的输出文件是空的,请帮助我, 我的输入文件 02AAP0000007010500001901
//STE1 IF RC EQ 1 THEN .... //结束 返回代码给我 FLUSH 并且所有其他作业都因此没有执行谁可以帮我这个事。是因为我没有给ELSE吗? 最佳答案 如果您有运行步骤的条件
我正在尝试以这种方式创建和删除数据集名称中带有 JCL 符号的数据集: // SET DATE=20110809 //* DELETE DATASET //DEL01 EXEC PGM=IDCA
我是一名优秀的程序员,十分优秀!