为什么我们在移动之前检查是否为空?
Why do we check if empty before we move?
我看到很多这样的代码:
if WA > SPACES
move WA to WA2
end-if
这个检查有什么好处?检查它是否为空比移动它更有效吗?
附加信息:
WA 和 WA2 可以是简单的结构(没有填充符),也可以只是简单的属性。它们没有被重新定义和键入为字符或字符结构。它们可以是 low-values
(语义上 NULL
)或具有字母数字内容。
除了编写代码的人之外,没有人能告诉您真正的原因是什么,但这是一个非常可能的原因:
通常这伴随着一个 ELSE
来涵盖如果值小于空格会发生什么,但在这种情况下,我会假设此数据以后发生的一切都依赖于该字段 NOT是 LOW-VALUES
或一些时髦的不可显示的控制字符。
如果非要我猜的话,我会假设 WA2
被初始化为空格。因此,在移动之前进行此检查可确保不会将低于空格的内容移动到该变量。请记住,小于空格并不意味着空,它只是意味着该字符串的十六进制值小于 X'40'
(例如,字符串中充满了低值,它将全部为 X'00'
。所以我猜想更多的是确保数据有效而不是效率。
我看到很多这样的代码:
if WA > SPACES
move WA to WA2
end-if
这个检查有什么好处?检查它是否为空比移动它更有效吗?
附加信息:
WA 和 WA2 可以是简单的结构(没有填充符),也可以只是简单的属性。它们没有被重新定义和键入为字符或字符结构。它们可以是 low-values
(语义上 NULL
)或具有字母数字内容。
除了编写代码的人之外,没有人能告诉您真正的原因是什么,但这是一个非常可能的原因:
通常这伴随着一个 ELSE
来涵盖如果值小于空格会发生什么,但在这种情况下,我会假设此数据以后发生的一切都依赖于该字段 NOT是 LOW-VALUES
或一些时髦的不可显示的控制字符。
如果非要我猜的话,我会假设 WA2
被初始化为空格。因此,在移动之前进行此检查可确保不会将低于空格的内容移动到该变量。请记住,小于空格并不意味着空,它只是意味着该字符串的十六进制值小于 X'40'
(例如,字符串中充满了低值,它将全部为 X'00'
。所以我猜想更多的是确保数据有效而不是效率。