0

我在使用 _getch() 函数时遇到问题,我想要它以便用户在从菜单中选择内容时不需要按 ENTER。但是,当我尝试使用它时,它要么不会将数据输入到变量中,要么会跳过我拥有的开关。我正在使用 Windows 7 和 CodeBlocks IDE。我做错了什么?提前致谢。

#include <iostream>
#include <sstream>
#include <conio.h>

using namespace std;

stringstream ss;
int a;

void play()
{
  cout << "\nYou wake up on the forest floor. You do not remember where you are, who you are, or anything\nthat has happened before you waking up. You seem to be some type of...\n";
  cout << "--CHARACTER SELECTION--\n1. Warrior\n2. Mage\n3. Rouge";
  cin.get();
};


int main()
{
//  CreateDirectory()
  cout << "--SELECTION MENU--\n1. Begin\n2. Delete Game\n3. Instructions" << endl;
  a=_getch();


  switch(a){

  case 1:
  play();
  break;

  case 2:
 // delete();
  break;

  case 3:
 // help();
  break;
  return 0;
  }
}
4

1 回答 1

1

将您的 char 与字符进行比较,'1''2'不是'3'整数1和.23

switch(a){

  case '1':
  play();
  break;

  case '2':
 // delete();
  break;

  case '3':
 // help();
  break;
  return 0;
}
于 2012-05-08T01:51:42.763 回答