将字符串向量转换为int

时间:2019-03-04 13:34:01

标签: c++ string vector atoi

我必须编写一个程序来从文件中读取学生的信息,并且我制作了两个向量来保留所有信息。但是然后我需要总结所有学生的缺勤情况,因此我需要将它们转换为整数,但是当我尝试运行程序时,但是当它到达atoi部分时立即崩溃。

def arfunc(x, a):
    ...

2 个答案:

答案 0 :(得分:3)

如果absences为空,则absences[0]的行为为未定义

absences.at(0)为空时使用absences会强制编译器引发异常,因此更易于使用。

无论哪种方式,对于缺席人数,只需使用

auto a = absences.size();

答案 1 :(得分:0)

您应该将不存在向量更改为int向量:

std::vector<int> abscences;

// rest of the code...

read >> var指令将负责转换。

当然,>>运算符如果无效则不会写入整数。