BAT技术面试最喜欢考的两个编程题
2015-04-09 21:42
162 查看
关于字符串的编程题真的是太常见了,而且是非常吸引BAT等公司IT技术面试官。这类题目一般都是不难的,核心代码都是非常简单,但是需要注意的细节是太多了,而这也正是考察了面试者的技术功底。关于字符串的考题,常见的有strncpy, strncat等等。
代码来自Linux Manual手册 (在linux终端输入 man strncpy 就可以看到了)
分析:
其实上面两段代码是很简洁的,也很美观。需要注意的点:
返回值是
添加
对
strncpy
代码来自Linux Manual手册 (在linux终端输入 man strncpy 就可以看到了)
char * strncpy(char *dest, const char *src, size_t n) { size_t i; for (i = 0; i < n && src[i] != '\0'; i++) dest[i] = src[i]; for ( ; i < n; i++) dest[i] = '\0'; return dest; }
strncat
char* strncat(char *dest, const char *src, size_t n) { size_t dest_len = strlen(dest); size_t i; for (i = 0 ; i < n && src[i] != '\0' ; i++) dest[dest_len + i] = src[i]; dest[dest_len + i] = '\0'; return dest; }
分析:
其实上面两段代码是很简洁的,也很美观。需要注意的点:
返回值是
char*
src的修饰是
const,这点尤其重要,很考察个人的
C++功底
添加
'\0'
size_t的使用
对
size_t的解释:
size_t是定义在
cstddef文件中,是一个与机器相关的
unsigned类型。32系统中是
unsigned int,64位系统中则是
long unsigned int
相关文章推荐
- Java研发方向如何准备BAT技术面试答案(上)
- Java研发方向如何准备BAT技术面试答案(中)
- 针对《面试心得与总结—BAT、网易、蘑菇街》一文中出现的技术问题的收集与整理(3)
- Java研发方向如何准备BAT技术面试答案(下)
- Java研发方向如何准备BAT技术面试答案(上)
- Java研发方向如何准备BAT技术面试
- 如何准备BAT技术面试答案(下)——Java研发方向
- Java研发方向如何准备BAT技术面试答案(下)
- Java研发方向如何准备BAT技术面试答案(中)
- 如何准备BAT技术面试答案(上)——Java研发方向
- Java研发方向如何准备BAT技术面试
- Java研发方向如何准备BAT技术面试答案(下)
- 如何准备BAT技术面试答案(上)——Java研发方向
- 针对《面试心得与总结—BAT、网易、蘑菇街》一文中出现的技术问题的收集与整理(2)
- Java研发方向如何准备BAT技术面试
- Java研发方向如何准备BAT技术面试答案
- Java研发方向如何准备BAT技术面试(超级干货)
- 如何准备BAT技术面试答案(下)——Java研发方向
- Java研发方向如何准备BAT技术面试答案(上)
- 如何准备BAT技术面试答案(中)——Java研发方向