vector<int> oper(int A, int B) {
std::vector <int> arrayV;
int addition = A + B;
arrayV.push_back(addition);
int mutiplication = A * B;
arrayV.push_back(mutiplication);
int subtraction;
if(A >=B ){
subtraction = A - B;
}
else(B >A );{
subtraction = B - A;
}
arrayV.push_back(subtraction);
int division;
if(A >=B ){
division = A / B;
}
else(B >A );{
division = B / A;
}
arrayV.push_back(division);
}//有谁知道我的代码哪里出了问题,它一直告诉我“纠错错误(SIGSEGV)",我希望arrayV能够在+,*,-,/之后存储数字;
发布于 2021-10-25 03:45:01
正如我和其他人在评论中所指出的,您忘了使用return arrayV;。而且,您的else语法错误。
std::vector<int> oper(int A, int B) {
std::vector <int> arrayV;
int addition = A + B;
arrayV.push_back(addition);
int mutiplication = A * B;
arrayV.push_back(mutiplication);
int subtraction;
if(A >=B ){
subtraction = A - B;
}
else{
subtraction = B - A;
}
arrayV.push_back(subtraction);
int division;
if(A >=B ){
division = A / B;
}
else{
division = B / A;
}
arrayV.push_back(division);
return arrayV;
}https://stackoverflow.com/questions/69702522
复制相似问题