2016-03-08 3 views
0
#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; 
} 

Как просто, я получаю дикий выход. Я чувствую, что это что-то очевидное, но я слишком устал, чтобы это увидеть. Число, которое я ввожу в переменные, - это количество символов, удаленных из следующей выходной строки. ex:cin ест выходной поток

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++ в течение нескольких месяцев, но я не вижу в этом ничего плохого.

+0

'недействительным основной (интермедиат ARGC, символ * ARGV [])' в глобальном масштабе является недопустимым в C++. Измените его тип возвращаемого значения на 'int'. – MikeCAT

+1

«Конверсия» + конверсия ?! – ZDF

+0

Вы не сумасшедший, и это имеет смысл. – MikeCAT

ответ

2

cout << "Conversion: " + conversion средство для печати от conversion элементы после головки массива.

Вы можете это (изменение + к <<):

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

Ах. Хорошо знать. В какой-то момент это может пригодиться. Спасибо, что потворствовал моему сну, лишенному глупости. – Zarthias

Смежные вопросы