Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何限制字符输入范围?_C++_Assembly_Visual C++ - Fatal编程技术网

C++ 如何限制字符输入范围?

C++ 如何限制字符输入范围?,c++,assembly,visual-c++,C++,Assembly,Visual C++,问题是 get_char子例程允许输入任何字符。使用assembly修改get_char,以仅接受包含在“0”和“z”范围内的ASCII字符。您还需要接受“$”作为有效输入(终止字符)。如果输入了无效字符,则应继续请求新的输入,直到给出一个输入,并显示错误消息“仅限字母数字字符,请重试>” 我没有汇编中的代码,但在C中,您显示的get\u char()函数需要看起来更像以下内容: void get_char(char&a_character) { 做 { a_character=(char)_g

问题是

get_char子例程允许输入任何字符。使用assembly修改get_char,以仅接受包含在“0”和“z”范围内的ASCII字符。您还需要接受“$”作为有效输入(终止字符)。如果输入了无效字符,则应继续请求新的输入,直到给出一个输入,并显示错误消息“仅限字母数字字符,请重试>”


我没有汇编中的代码,但在C中,您显示的
get\u char()
函数需要看起来更像以下内容:

void get_char(char&a_character)
{
做
{
a_character=(char)_getwche();
如果(

((AyMys>=0))(Ay字符)如果你使用汇编,为什么你把它标记为C++?哦,是的。谢谢。
void get_char(char& a_character)
{
  a_character=(char) _getwche();
  if (a_character=='0' || a_character=='z')  // allow the enter key to work as the terminating character too
    a_character=dollarchar;
}