本文实例讲述了C++不使用变量求字符串长度strlen函数的实现方法。分享给大家供大家参考。具体实现方法如下:
1、strlen的源码实现:
1
2
3
4
5
6
7
|
size_t strlen ( const char *str) //strlen不做内存非法判断,如果是NULL,会core。 { const char *eos=str; while (*eos++); return (eos-str-1); } |
2、常见面试题会要求不使用额外变量,实现strlen函数:
实现一:
1
2
3
4
5
6
7
|
int strlen ( const char *str) { if ( '\0' ==*str) return 0; else return strlen (str+1)+1; } |
实现二:
1
2
3
4
|
int strlen ( const char *str) { return *str?( strlen (str+1)+1):0; } |
希望本文所述对大家的C++程序设计有所帮助。