免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2109 | 回复: 8
打印 上一主题 下一主题

奇怪的参数长度问题(字符型参数长度超过33位会出错) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-07-13 21:12 |只看该作者 |倒序浏览
有这样一个程序:                              
DA1               S             50A                                    
DA2               S             50A                                    
C     *entry        PLIST                                                                  
C                   PARM                    A1                          
C                   PARM                    A2                                                            
C                   SETON                                            LR
1,当我调试时,传入参数parm('A'  'B'),然后跟踪A1,A2参数,结果发现A1的值变成了A                             B            ,A2的值变成B                                乱码,    几次测试发现A1在第33个字符处被A2覆盖,不知何故。
2,然后更改参数长度为33,依法跟踪,正常;参数长度改为34,依法跟踪,出现同样的错误。
3,传入参数时使用空格补齐parm('A                                          ' 'B                                     ' ),正常。
为什么在长度是33时传入少于33位的参数就正常,而长度多余33时传入的参数不足位数就不行?难道传入参数位数不够时必须使用空格补齐吗?还有没有其他处理方法?还是我的程序写的有问题?望兄弟们指点迷津。

[ 本帖最后由 chenzhy 于 2006-7-13 21:14 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-07-14 08:31 |只看该作者
很困惑

我用过30000长的字符参数,一点没事

论坛徽章:
0
3 [报告]
发表于 2006-07-14 08:46 |只看该作者
是用其他cl或rpg程序调用的吗?

论坛徽章:
0
4 [报告]
发表于 2006-07-14 08:48 |只看该作者
我直接在命令行调用的:
call pgm(libname/pgmname) parm('s' 's' 's' ) 类似这样。

论坛徽章:
0
5 [报告]
发表于 2006-07-14 08:53 |只看该作者
我的意思是
call pgm(libname/程序1) parm('s' 's' 's' )
在程序1中call 程序2 ,而程序2 是你说的程序。

论坛徽章:
0
6 [报告]
发表于 2006-07-14 08:56 |只看该作者
不是的,我在绿屏的命令行call的,只有一个程序。

[ 本帖最后由 chenzhy 于 2006-7-14 09:00 编辑 ]

论坛徽章:
0
7 [报告]
发表于 2006-07-14 09:43 |只看该作者
命令行执行是有问题的,你可以写一个cl程序,在程序里把参数值赋给变量s1、s2、s3,再call 该程序
call pgm(libname/pgmname) parm(&s1 &s2 &s3 )

论坛徽章:
0
8 [报告]
发表于 2006-07-14 09:51 |只看该作者
谢了。

论坛徽章:
0
9 [报告]
发表于 2006-07-14 17:53 |只看该作者
曾经遇到这样的问题!^_^
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP