Сначала мне нужно прочитать два целых числа N и Q, разделенных пробелом. Я делаю это с помощью cin. Затем в следующих двух строках следуют два двоичных числа, каждое из N цифр. Я пытаюсь прочитать эти числа по крупицам, используя getchar() и помещая их в вектор int, но он печатает значения мусора. Есть ли проблема с символом новой строки. Я знаю, что мог бы сначала прочитать их в строку, а затем поместить в вектор, но я хотел сделать так. Вот мой код:
#include <iostream>
#include <algorithm>
#include <vector>
#include <stdio.h>
using namespace std;
int main(){
int N;
int Q;
cin >>N>>Q;
string A, B;
//cin >> A>>B;
vector <int> Abit;
vector <int> Bbit;
for (int i=0;i<N;i++){
char c= (int) getchar();
Abit.push_back(c);
}
for (int i=0;i<N;i++){
// cout << Abit.at(i);
char c= (int) getchar();
Bbit.push_back(c);
}
for (int i=0;i<N;i++){
cout << Abit.at(i);
// char c= (int) getchar();
// Bbit.push_back(c);
}
}
cin >> A >> B
? Может, попробовать избавиться от этого? - person Xymostech   schedule 12.09.20130
и1
. Вы пытались сделать что-то вродеgetchar() - '0'
? - person Xymostech   schedule 12.09.201310110100 10110111
? Я должен предположить, что это становится тривиальным, если они есть. - person WhozCraig   schedule 12.09.2013