作业帮 > 综合 > 作业

ABAP中数值有括号与没括号的区别

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/27 17:07:02
ABAP中数值有括号与没括号的区别
ABAP中数值有括号与没括号有什么区别?例如
DATA:NUMBER TYPE I VALUE 1234567890,TEXT(10) VALUE 'abcdefghij'.
WRITE:(5) NUMBER,/(5) TEXT.
这个程序与
DATA:NUMBER TYPE I VALUE 1234567890,TEXT(10) VALUE 'abcdefghij'.
WRITE:5 NUMBER,/5 TEXT.
这个程序输出结果就不一样了..
ABAP的通用规则是:在括号里的数字表示长度,不再括号里的表示位置.如果LV_VA = ‘ABCDEFG’,比如 LV_VA+2(3)表示从第三位开始的长度为3 的字字符串‘CDE’.你的程序第一段的意思是输出NUMBER和TEXT,但是他们的输出长度为5;第二段的意思是在report的输出行的第五个位置输出两个变量.
再问: 那请问输出的结果为什么是这个呢? *7890 abcde
再答: ABAP处理字符串和数字的时候,对齐方式是不一样的。数字是右对齐,字符串是左对齐,发生截断的时候也遵循这个规则。数字截断用‘*’告诉你又截断发生了。