Jos*_*mon 0 c++ arrays string-parsing
我有一个字符串,这是一个白色空格分隔整数,我想将其转换为整数向量的数组.我的字符串就像:
6 9 17 5 3 4 10 12 7 3 5 10 6 5 0 10 10 10 13 3 6 10 2 11 33 9 14 7 0 8 7 6 38 2 23 8 4 52 7 3 19 12 2 22 3 6 3 1 2 1 5 17 13 5 1 6 0 12 6 9 15 2 22 0 27 2 3 4 7 2 8 2 8 6 11 22 4 9 4 1 1 2 2 16 8 3 1 8 0 4 4 2 1 10 24 15 8 2 6 9
Run Code Online (Sandbox Code Playgroud)
如何将它转换为数组/向量?
使用std::istream_iterator.例:
std::vector<int> vector(std::istream_iterator<int>(std::cin), std::istream_iterator<int>());
Run Code Online (Sandbox Code Playgroud)
或者,用std::string:
std::string s = "6 9 17 5 3 4 10 12 7 3 5 10 6 5 0 10 10 10 13 3 6 10 2 11 33 9 14 7 0 8 7 6 38 2 23 8 4 52 7 3 19 12 2 22 3 6 3 1 2 1 5 17 13 5 1 6 0 12 6 9 15 2 22 0 27 2 3 4 7 2 8 2 8 6 11 22 4 9 4 1 1 2 2 16 8 3 1 8 0 4 4 2 1 10 24 15 8 2 6 9";
std::stringstream ss(s);
std::vector<int> vec((std::istream_iterator<int>(ss)), (std::istream_iterator<int>()));
Run Code Online (Sandbox Code Playgroud)