今天碰到一个优点奇怪的字符串的问题,看看下面的代码吧:
DATA: ch3(3) TYPE c,
ch2(2) TYPE c.
ch2 = 1.
ch3 = 2.
IF ch3 eq '2'.
WRITE:/ 'dd'.
ENDIF.
IF ch2 eq '1'.
WRITE:/ 'ff'.
ENDIF.
会输出什么样的结果了?答案是会输出ff!但是不会输出dd。ch2和ch3都是字符型的,都没有通过单引号赋值,但是结果却不一样,不知道abap里字符是怎么比较的。跟踪程序发现ch3的十六进制是200032002000,ch2是32002000。原因尚不了解。