一道简单的OJ题目 见鬼了 百思不得其解
时间:01-13 10:53 阅读:623次
*温馨提示:点击图片可以放大观看高清大图
简介:一道简单的OJ题目,附回复讨论(解决方案)。
就这么道简单的题我写的答案如下
输入:
输出:
返回:成功0,其它-1
*/
intProcessString(char*strInput,charchSrc,charchDes,char*strOutput)
{
if(strInput==NULL)
return-1;
while(*strInput!='\0')
{
if(*strInput==chSrc)
{
*strOutput=chDes;
}
else
*strOutput=*strInput;
strOutput++;
strInput++;
}
*strOutput='\0';
return0;
}
提交之后4个测试用例通过1个测试用例失败
我想了好久都没想到究竟是个什么测试用例通不过?求大伙支招
回复讨论(解决方案)
1.
if(strInput==NULL)
{
*strOutput='\0';
return-1;
}
2.
assert(strOutput);///如果有可能,加断言
assert(strInput);///如果有可能,加断言
if(strOutput==NULL){
return-1;
}
if(strInput==NULL){
*strOutput='\0';
return-1;
}
因为参数不够,所以最安全的只能是这样了
3.
输入输出是空返回-1,没有替换也应该返回-1