使用V1.8 z/OS XL C编译器,使用INFO(ALL)警告升级,我在下面的代码第4行收到以下警告:
WARNING CCN3196 Initialization between types "const int** const" and "int**"
is not allowed.
1 int foo = 0;
2 int *ptr = &foo;
3 const int * const fixed_readonly_ptr = ptr;
4 const int ** const fixed_ptr_to_readonly_ptr = &ptr;
Run Code Online (Sandbox Code Playgroud)
我无法理解为什么我会收到这个警告.如果我可以将一个int指针指向一个指向const int(第3行)的const指针,那么为什么我不能将一个int指针的地址分配给指向const int指针的const指针?我错过了什么?
请注意,上面的代码是一个精简的示例,只是显示了我在少量代码中遇到的问题.真正的上下文是我有一个const指针指向struct(struct s**const),并将它作为参数传递给函数,该函数的参数被定义为指向const结构的指针的const指针(const struct s**)常量).这是因为函数不会修改结构中的数据(因此是第一个const),并且它不会修改始终保存传入的地址的指针参数(因此第二个const).指向的指针的值可以通过这种方式改变(这就是**之间没有第三个const的原因).
我有一个需要从Web服务获取数据的COBOL程序.不使用CICS我最好的选择是什么?我认为C程序可以读取Web服务并将其保存到文件中,然后COBOL可以读取该文件.COBOL可以调用Web服务吗?数据大小约为300mb.
该官方指南说,使用CMD(your_statement)函数,但我不断收到一个无法识别关键字错误.我正在尝试自定义ISPF主选项菜单,我需要编辑面板,这样当你按'R'时它会运行一个Rexx exec.以下是我正在使用的面板中的一些代码:
%
% ******************
% * *
% * $2 %Edit *
% * $3 %Utility *
% * $6 %Command *
% * $SD %SDSF *
% * $D %Datasets *
% * $X %eXit *
% * $R %REXX *
% * *
% ******************
)PROC
&ZSEL = TRANS ( TRUNC (&ZCMD,'.')
2,'PGM(ISREDIT) PARM(P,ISREDM01) SCRNAME(EDIT)'
3,'PANEL(ISRUTIL) SCRNAME(UTIL)'
D,'PGM(ISRUDL) PARM(ISRUDLP) SCRNAME(DSLIST)'
6,'PGM(ISRPTC) SCRNAME(CMD)'
SD,'PGM(ISFISP) NOCHECK NEWAPPL(ISF) SCRNAME(SDSF)'
R,'CMD(TSO EXEC 'IBM####.REXX(REXXSYSC)')'
' ',' '
X,'EXIT'
*,'?' ) …Run Code Online (Sandbox Code Playgroud) 我尝试使用IBM z/OS在JCL程序之后运行此命令
//PAYMENT JOB MSGCLASS=H
//PAYMENT EXEC PGM=PAYMENT,REGION=1024K
// PARM='CSQ1,CARD.PAYMENTS,IND0163.REPLY,IND0163
// 5999.99,"MY PAYMENT"'
//STEPLIB DD DSN=ZOS.CONTEST3.PART2.LOAD,DISP=SHR
// DD DSN=WMQ.V6R0.SCSQLOAD,DISP=SHR
// DD DSN=WMQ.V6R0.SCSQANLE,DISP=SHR
// DD DSN=WMQ.V6R0.SCSQAUTH,DISP=SHR
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
Run Code Online (Sandbox Code Playgroud)
但在提交作业后,当我尝试使用SDSF查看作业输出时,我在第3行和第4行获得了IEFC605I未知操作字段 !! 谁能告诉我我的节目有什么问题......
如何使用COBOL获取PDS的成员列表(使用批处理作业中指定的DD名称)?可以动态处理使用DDNAME指定的PDS.因此,使用TCB可以获得给定DDNAME的PDS列表并处理指定的成员名称.
但是如何使用COBOL获取PDS的成员列表?我知道这可以使用REXX轻松实现.但我需要它在COBOL中或直接从COBOL调用.
在z/OS上运行java批处理程序的方法在z/OS上相对较新,或者已经很长时间了吗?
这个问题背后的原因是因为,我听说IBM这是一个相对较新的尝试,并且市场上没有太多的实时系统在这种方法中运行.真的吗 ?
注意:我知道JSR352已经存在了很长一段时间但是,我的问题是针对z/OS(大型机)中Liberty配置文件的支持
我将尽可能地描述我的问题.
我事先知道可以使用第一行末尾的反斜杠键入不适合一行的z/OS shell UNIX命令.事实上,我已经在我正在使用的计算机上测试过并且执行得很好.
例如; 为了做测试我输入ls命令如下:
首先没有来自命令行的反斜杠:
ls -la
Run Code Online (Sandbox Code Playgroud)
在从命令行使用反斜杠之后:
ls\
-la
Run Code Online (Sandbox Code Playgroud)
我得到了同样好的结果
我想知道的是如何在使用BPXBATCH执行的STDIN中的z/OS UNIX shell脚本中执行相同操作.
如果我按照以下命令执行ls -la它执行得很好; 但是,如果我尝试将它分成两行,它就不起作用了.
愿任何人在这个问题上有所了解吗?
很多人提前说
(Obvioulsy ls -la是一个非常简单的例子,只是为了表明我面临的问题;真正的命令要大得多)
我一直在寻找互联网上的各种资源,但找不到我理解的确定答案,所以我在这里问:
如何从z/OS MVS调用z/OS UNIX代码?
我知道BPXBATCH PGM ...可以从z/OS MVS TSO调用z/OS UNIX程序.
但我可以这样做,例如在az/OS MVS PL/I程序中吗?
我想说的是,
我的用例是:我有一个20世纪70年代的旧PL/I库,现在需要进行网络连接.据我所知,网络将在z/OS UNIX世界中顺利进行.
旧的PL/I库静态链接到我无法直接影响的多个其他软件.
PS:有声望更高的人可以建立一个stackoverflow PLI标签吗?;-)
我正在将一些COBOL代码从zOS移动到Linux,并在COBOL程序的顶部偶然发现了这段代码:
CBL DATEPROC(FLAG),YEARWINDOW(-90) 004220CB
ID DIVISION. 004220CB
PROGRAM-ID. AL0001. 004220C
Run Code Online (Sandbox Code Playgroud)
是COBOL编译器检测到的那些编译器选项,还是它们对某种第三方预处理器的指令.
我个人的猜测是,它是第三方处理器,处理代码中的Y2K问题.
我在Ubuntu 16.04上使用x3270.zOS没有一个好的编辑器,不得不编写大量的代码并修复它是一件痛苦的事.
我想在我的计算机上编写代码并将其复制到x3270窗口中.
有没有办法做到这一点?