-4
当这些返回被调用时,这段代码将返回1或0的值,但如果它返回到默认返回值2,它不会返回它。我相信这是我错过的小事,但我无法弄清楚。函数不返回默认值C++
int comp(string a, string b){
char x;
char y;
int i = 1;
int len;
len = a.length();
if(b.length() < (unsigned)len){
len = b.length();
}
len++;
while(i!=len){
x = a.at(i);
y = b.at(i);
if(getNum(x) < getNum(y)){
return 1;
}
else if (getNum(x) > getNum(y)){
return 0;
}
i++;
}
return 2;
}
'len'变量应该声明为'size_t'或'unsigned int'。我从来没有遇到过负长度的字符串。 –
无论这个功能应该做什么,它做错了。索引从0开始,而不是1. –
请使用'getNum'的*定义*编辑您的文章。 –