我必须编写一个程序来从文件中读取学生的信息,并且我制作了两个向量来保留所有信息。但是然后我需要总结所有学生的缺勤情况,因此我需要将它们转换为整数,但是当我尝试运行程序时,但是当它到达atoi部分时立即崩溃。
def arfunc(x, a):
...
答案 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
指令将负责转换。
当然,>>
运算符如果无效则不会写入整数。