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语句检查我的string变量。
但是char呢?
答案 0 :(得分:0)
您可以将字符串视为char
的数组。您可以使用operator[]
重载std::string
类从字符串中提取单个字符:
// string data;
char myChoice = data[0]; // first char in "data"
对于问题的第二部分,您可以像对字符串一样使用char
检查if...else
变量:
char myInput;
...
if (myInput == 'a')
{
...
}
else if (myInput == 'b')
{
...
}
...
或者您也可以使用switch
语句。
答案 1 :(得分:0)
您可以使用stdio.h中的getchar()。
int main() {
char c;
c = getchar();
return (0);
}
答案 2 :(得分:0)
你不能将字符串转换为char,你必须将它转换为char数组。如果你想从字符串中获取单个字符,可以通过将字符索引设置为data [index]并将其分配给字符变量来实现。