你能否让我知道以下声明的含义?
S:%B= %B="@1" S:%E= %E="@999"
Run Code Online (Sandbox Code Playgroud)
小智 6
自行:
S:%B= %B="@1" S:%E= %E="@999"
Run Code Online (Sandbox Code Playgroud)
实际上并不是MUMPS代码,我同意其他的回答者说将代码粘贴到这个论坛可能存在问题.
您打算发布的最有可能的MUMPS代码是:
S:%B="" %B="@1" S:%E="" %E="@999"
Run Code Online (Sandbox Code Playgroud)
有完整的解释,这是同一行上的两个MUMPS命令:
S:%B="" %B="@1"
S:%E="" %E="@999"
Run Code Online (Sandbox Code Playgroud)
使用非Terse MUMPS,将是:
SET:%B="" %B="@1"
SET:%E="" %E="@999"
Run Code Online (Sandbox Code Playgroud)
或者用英语,这些命令检查变量,如果它没有对该程序有意义的值,则为该变量赋值(SET)一个默认值.
对于名为%B的变量,当满足保护条件(%B ="")时,将分配默认字符串值"@ 1".同样,对于名为%E的变量,如果变量%E等于空字符串,则分配默认字符串值"@ 999".
MUMPS中的"@"字符用于将值后期绑定到变量(在语言中称为间接),但必须后跟变量名称.纯数字值(如"1"或"999")不是变量的名称,因此这些默认值极不可能间接引用另一个值.