手机版

C、C++程序员应聘常见面试题深入剖析(3)

发布时间:2021-06-07   来源:未知    
字号:

C/C++程序员面试技巧

7分

以下是引用片段:

void strcpy(char *strDest, const char *strSrc)

{

//对源地址和目的地址加非0断言,加3分

assert( (strDest != NULL) &&(strSrc != NULL) );

while( (*strDest++ = * strSrc++) != \0 );

} 10分

以下是引用片段:

//为了实现链式操作,将目的地址返回,加3分!

char * strcpy( char *strDest, const char *strSrc )

{

assert( (strDest != NULL) &&(strSrc != NULL) );

char *address = strDest;

while( (*strDest++ = * strSrc++) != \0 );

return address;

} 从2分到10分的几个答案我们可以清楚的看到,小小的strcpy竟然暗藏着这么多玄机,真不是盖的!需要多么扎实的基本功才能写一个完美的strcpy啊!

(4)对strlen的掌握,它没有包括字符串末尾的'\0'。

读者看了不同分值的strcpy版本,应该也可以写出一个10分的strlen函数了,完美的版本为: int strlen( const char *str ) //输入参数const

以下是引用片段:

{

assert( strt != NULL ); //断言字符串地址非0

int len;

while( (*str++) != '\0' )

{

len++;

}

return len;

}

C、C++程序员应聘常见面试题深入剖析(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)