我有这个带有以下代码的 MFC 应用程序,用于检查使用应用程序中的编辑控件输入的数字的有效性。它被验证为一串字符。
bool invalid = FALSE;
int string_length = InputEdit.GetWindowText(text, 10);
if (text[0] == '-1')
for(i=1; i<string_length; i++)
if((text[i] < '0' || text[i] > '9' ) && text[i] != '.'){
MessageBeep(MB_ICONEXCLAMATION);
Reactive_Const_Status_Text.SetWindowText("Invalid AA Value");
invalid = TRUE;
}
else
for(i=0; i<string_length; i++)
if((text[i] < '0' || text[i] > '9' ) && text[i] != '.'){
MessageBeep(MB_ICONEXCLAMATION);
Reactive_Const_Status_Text.SetWindowText("Invalid AA Value");
invalid = TRUE;
}
if(!invalid){
double temp_value = atof(text);
reac.VelAA = temp_value;
}
所以这个编辑控件允许用户输入负数。但是,有人可以解释一下“if (text[0] == '-1')”这行代码在代码中的作用吗?它是否检查负数,如果是,为什么要使用 '-1' ?其次,我想将此代码转换为 C#,那么如何转换这一行?
提前致谢