一行输入。 Ints而不是整数

时间:2013-11-14 17:01:12

标签: c++ input

我是c ++的新手,我之前在python上编码过,所以,这对我来说是个新世界,对不起,如果这个问题很明显的话。 今天,我试图在c ++上编写我的第一个代码,然后我就陷入了困境。我有一行整数,比如

10, 10, 10, 13, 1341, 134, 134, 184431

与lengts m。在该特定示例中,m = 8。如何读取它们并保存到我的数组/向量中? 还有一个问题,如果我有非标准输入,例如,(*,#)中的n和m符号,如

####
****
#*#*

有n = 3,m = 4。如果我想表示#喜欢1和*喜欢0,并将其保存在矢量的矢量中,我该怎么办?

提前谢谢

1 个答案:

答案 0 :(得分:2)

关于你的第一个问题:

int m;
std::cin >> m;

std::vector<int> v(m);
for (auto i = 0; i < m; ++i)
    std::cin >> v[i];

第二个:

int n, m;
std::cin >> n >> m;

std::vector<std::vector<int>> matrix(n, std::vector<int>(m));
std::string line;

for (auto i = 0; i < n; ++i)
{
    std::cin >> line;
    for (auto j = 0; j < m; ++j)
        if (line[j] == '#')
            matrix[i][j] = 1;
        else
            matrix[i][j] = 0;
}