首先我需要读取两个用空格分隔的整数 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);
}
}