参加软件工程师应聘的笔试常常会遇到这个题目--实现strcpy函数,原型是char * strcpy(char * target, const char * source);
如果你认为这是一个太简单的题目而敷衍了事,很可能马上被bishi了。
这道题可以说是“麻雀虽小,五章俱全”。第一,从你的代码中可以看出你的编码风格;第二,可以看出你的思维是否严密,对异常处理是否到位。
这里有一个参考答案,看看你写的和它有多大的差距吧:
char * strcpy(char * target, const char * source)
{
if ((NULL == target) || (NULL == source))
{
throw "invalid argument(s)";
}
char * const targetCopy = target;
while ((*target++ = *source++) != '\0');
return targetCopy;
}
|
阅读(510) | 评论(0) | 转发(0) |