
cobol 的数组下标问题 5
今天遇到个奇怪的问题,一个变量AOCCURSOCCURS20当把一个另一个变量赋给A(21)的时候,下标超出,但是程序还能正常结束,我想知道在cobol程序中下标越界后会...
今天遇到个奇怪的问题,一个变量A OCCURS OCCURS 20 当把一个另一个变量赋给A(21) 的时候,下标超出,但是程序还能正常结束,我想知道在cobol程序中下标越界后会不会报出系统错误
展开
5个回答
展开全部
就像Javascript,你定义了长度为4的数组,下标为0~3,然而你也可以向下标4及以后的下标赋值,没有错误。
也就是说,你初始化定义的长度,原则上是它的长度,但是也可扩展。
也就是说,你初始化定义的长度,原则上是它的长度,但是也可扩展。
展开全部
VARYING IDX -->idx 作为循环下标
FROM 1--> idx从1开始
BY 1-->步长为1(就是加1)
until idx>5 -->直到下标大于5退出循环
和C的"FOR (I=1;I<=5;I++)"功能一样.
FROM 1--> idx从1开始
BY 1-->步长为1(就是加1)
until idx>5 -->直到下标大于5退出循环
和C的"FOR (I=1;I<=5;I++)"功能一样.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
A14) Must use compiler option SSRANGE if you want array bounds checking. Default is NOSSRANGE.
Q:我的程序有个数组定义了10项。因为有个BUG,我发现即使访问第11项,程序也不异常终止。那是出了什么问题
A:必须使用编译器的一个选项SSRANGE,如果你想检查数组的超界问题。默认是NOSSRANGE
意思就是说要这个选项为NOSSRANGE的时候才会报错,不然是不报错的。
Q:我的程序有个数组定义了10项。因为有个BUG,我发现即使访问第11项,程序也不异常终止。那是出了什么问题
A:必须使用编译器的一个选项SSRANGE,如果你想检查数组的超界问题。默认是NOSSRANGE
意思就是说要这个选项为NOSSRANGE的时候才会报错,不然是不报错的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呵呵,我觉得是会报错的吧,偶好像没碰到过,明天去试试看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
必须使用编译器的一个选项SSRANGE,如果你想检查数组的超界问题。默认是NOSSRANGE
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询