【发布时间】:2015-09-30 02:52:38
【问题描述】:
我想将带有整数和空格的字符串读入数组。例如,我有一个看起来像 1 2 3 4 5 的字符串,我想将其转换为整数数组 arr[5]={1, 2, 3, 4, 5}。我该怎么做?
我试图删除空格,但这只是将整个 12345 分配给每个数组元素。如果我不把所有元素都赋值为 1。
for (int i = 0; i < str.length(); i++){
if (str[i] == ' ')
str.erase(i, 1);
}
for (int j = 0; j < size; j++){ // size is given
arr[j] = atoi(str.c_str());
}
【问题讨论】:
-
为什么不使用
vector? -
@user657267 是的,但有点倾斜。王牌,
stringstream input("1 2 3 4 5");然后while (input >> arr[i] && i < MAX_I);更好,while(input >> temp) vec.push_back(temp);