cin正在吃输出流

时间:2016-03-08 05:57:52

标签: c++ cout cin

#include <iostream>

using namespace std;

void main(int argc, char* argv[])
{
    int conversion, hash;

    cout << "Select one." << endl;
    cout << "0: Radix Method 32" << endl;
    cout << "1: Radix Method 64" << endl;
    cout << "2: SumUp" << endl;
    cin >> conversion;

    cout << endl << "Select one." << endl;
    cout << "0: Division" << endl;
    cout << "1: Multiplication" << endl;
    cin >> hash;

    cout << "Conversion: " + conversion << endl;
    cout << "hash: " + hash << endl;
}

这很简单,我的输出很疯狂。我觉得这很明显,但我太累了,看不到它。我输入变量的数字是从下一个输出字符串中删除的字符数。例如:

Select one.
0: Radix Method 32
1: Radix Method 64
2: SumUp
1

Select one.
0: Division
1: Multiplication
2
onversion:
sh:
Press any key to continue . . .

Select one.
0: Radix Method 32
1: Radix Method 64
2: SumUp
5

Select one.
0: Division
1: Multiplication
1
rsion:
ash:
Press any key to continue . . .

我疯了还是没有意义?我使用cin错了吗?我几个月没有使用过C ++,但我看不出它有什么问题。

1 个答案:

答案 0 :(得分:2)

cout << "Conversion: " + conversion表示从数组头部后面的conversion元素打印。

您可能需要这样做(将+更改为<<):

cout << "Conversion: " << conversion << endl;
cout << "hash: " << hash << endl;