将数字的字符串数组转换为整数数组时,元素将变为 0

When converting a string array of numbers to an array of integers the elements are turned to 0s

本文关键字:数组 元素 整数 转换 数字 字符串      更新时间:2023-10-16

当我将信息转换为整数并打印出数组时,输出仅为 0s。info 中的每个元素都是作为字符串输入的数字,该字符串取自文本文件。例如:513497628 19 4 16 4 7 14 18 15 10 6 6 1 7 17 88 10 79。我使用 strtok 从行中删除空格并将数字输入信息。当我打印出信息时,所有数字都在那里。如何让这些正确转换?

string info[1000]
int student[18];
for (int i=1; i<18; i++){
//cout << info[i] << endl;
stringstream convert(info[i]);
convert << student[n];
cout << student[n] << endl;
n++;
}

字符串流是我最喜欢的工具。它们会自动转换数据类型(大多数时候(,就像 cin 和 cout 一样。下面是一个字符串流的示例。它们包含在库中

string info = "513497628 19 4 16 4 7 14 18 15 10 6 6 1 7 17 88 10 79";
int student[18];
stringstream ss(info);
for (int i=0; i< 18; i++){
ss >> student[i];
cout << student[i] << endl;;
} 

这是一个回复 https://repl.it/J5nQ