我正在阅读某位同事编写的一些代码行,他编写了以下代码:

int keych = 0;
keych = _getch();
if (keych == 104 || keych == 104 - 32) //Help
{
    printf(cHelp);
}


我不明白的是,为什么他不使用简单的char数据类型,这有助于编写更少的代码。使用该方法而不是char数据类型来获取用户输入的好处是什么?

最佳答案

使用

if (keych == 104 || keych == 104 - 32) //Help


判断输入字符是'h'还是'H'错误。


很难阅读。
它仅适用于使用104和72编码hH(例如ASCII)的系统。


最好使用:

if (keych == 'h' || keych == 'H')


要么

if ( tolower(keych) == 'h' )

10-06 16:01