使用cin将单个字母输入到char中

时间:2014-06-10 16:28:21

标签: c++ arrays input char cin

我一直在尝试使用“cin”将单个字母输入到一个名为letter的字母中。我必须使用这种方法输入这封信,但每次我在“cin”行之后输出该字母时,我都会有一个无法识别的字符。

int main()
{
char letter[2];
cout << "Enter a letter: ";
cin >> letter;
cout << letter[2];
return 0;
}

输出:

Enter a letter: a
▮

我有时会得到随机字符输出,例如“1”和“s”。

非常感谢任何帮助!

谢谢!

2 个答案:

答案 0 :(得分:2)

您没有正确输入或输出字符。 char letter[2]是一个包含2个字符的数组,而不是单个字符。你想要char letter。此外,您正在输出letter[2],这是仅具有两个值的数组的第三个元素(C ++中的索引从0开始;第一个元素是letter[0],第二个元素是letter[1] )!输出将始终是垃圾。正确的代码应该是:

char letter;
cout << "Enter a letter: ";
cin >> letter;
cout << letter;
return 0;

答案 1 :(得分:0)

您只需设置数组中字母的长度,然后简单地显示出来即可。

    int main()
    {
    char single[1];
    cout << "Enter any single letter\n";
    cin >> single;
    cout << "Your letter is\n";
    cout << single;
    return 0;
    }