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'123

switch(a){

  case '1':
  play();
  break;

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

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