问题描述
|
我试图格式化输出变量,如下所示:
方案1:
LET msg = \"Roopesh Majeti here \"
Empno Using \"&&&&&\"
Call Logmsg(msg)
在这种情况下,empno被格式化为5位[我应该说空格]并得到显示。
方案2:
Let c_check = \"&&\"
Let msg =\"Roopesh Majeti here\"
Empno using c_check
Call Logmsg(msg)
在这里,我的期望是,无论c_check的值是多少(例如10&\'s),empno都应格式化为10个位置/空间。
但是它没有按预期工作。
我在这里想念什么吗?
解决方法
您不会说自己得到了什么,这使得很难知道它是如何工作的。
您有一些小的语法错误,在常量字符串后缺少逗号。
您没有显示
msg
或c_check
的声明;问题可能是邮件被截断了吗?
使用时会得到什么:
DISPLAY \"<<\",msg CLIPPED,\">>\"
DISPLAY \"<<\",msg,\">>\"
您应该可以向我们展示这样的完整程序及其输出:
MAIN
DEFINE msg CHAR(64)
DEFINE c_check CHAR(20)
DEFINE empno INTEGER
LET empno = 12345
LET msg = \"Roopesh Majeti here \",empno Using \"&&&&&\"
DISPLAY \"<<\",\">>\"
DISPLAY \"<<\",\">>\"
LET empno = 987654321
LET c_check = \"&&\"
LET msg =\"Roopesh Majeti here\",empno USING c_check
DISPLAY \"<<\",\">>\"
END MAIN