cobol中move语句

来源:百度知道 编辑:UC知道 时间:2024/06/16 21:54:15
01 A pic 9(5) VALUE 12345;
01 B pic X(6);
MOVE A TO B;
DISPLAY B;
B 是" 12345"还是"12345 "
move 语句的规则是什么
高手帮忙解答,谢谢!
如果如下:
01 A pic X(5) VALUE "12345";
01 B pic 9(6);
MOVE A TO B;
DISPLAY B;
B是012345么?

B应该是“12345 ”注意5后面补一空格,这是因为上面那种数值型到字符型类型是按照左对齐原则

(1)B是"12345 "
(2)B是012345

X型的左对齐,9型的右对齐。
不同类型的数据之间进行MOVE的时候,先进行数据类型转换。
例如,MOVE 9(5) TO X(6), 先把9(5)转换成X(5),再赋值给X(6)。

B的显示结果为"12345△"
△为半角空格。

MOVE语句的规则为:
如果A,B都为数字型变量的话,则按小数点对齐的方式移送。
将一个数据项(数字型或字符型)赋值给一个字符型的变量时,则按左对齐的方式进行。
注:一般不将一个字符型变量直接赋值给一个数字型变量。除非能确保字符型变量存储的是数字。