1
int main
{
  string data;
  data = "q";

  char myChoice;

  myChoice = data.c_str();
}

を使ってみc_str()ましたが、うまくいきません。stringに変換するにはどうすればよいcharですか?

というか聞きたい

int main()
{
  char myInput;
  // How to check user input is either a , b or c for char.
  cout << "Your Input ";
  cin >> myInput;
}

stringを使用できるので、getline(cin,mystringvariable)if-else ステートメントで文字列変数をチェックします。

しかし、チャーはどうですか?

4

3 に答える 3

3

文字列は の配列と考えることができますcharoperator[]クラスでオーバーロードを使用std::stringして、文字列から単一の文字を抽出できます。

// string data;
char myChoice = data[0]; // first char in "data"

質問の 2 番目の部分では、文字列の場合と同じようにchar変数を確認できます。if...else

char myInput;
...
if (myInput == 'a')
{
   ...
}
else if (myInput == 'b')
{
   ...
}
...

またはswitchステートメントを使用することもできます。

于 2012-11-04T11:11:03.573 に答える
1

文字列を char に変換することはできません。char 配列に変換する必要があります。文字列から単一の文字を取得したい場合は、data[index] のような文字のインデックスを配置し、それを文字変数に割り当てることで実行できます。

于 2012-11-04T11:23:21.103 に答える
0

stdio.h から getchar() を使用できます。

int main() {
  char c;
  c = getchar();
  return (0);
}
于 2012-11-04T11:12:02.797 に答える