strlen函数求的是字符串的长度(实际字符的个数)。我这里提供三种方法给你,希望你看后能有所收获。
方法一:
int my_strlen(char str[]) { int count = 0; int i = 0; for (i = 0; str[i] != '\0'; i++) { count++; } return count; }方法二:
int my_strlen(char str[]) { int count = 0; while (*str != '\0') { count++; str++; } return count; } 方法三: int my_strlen(const char* str ) { assert(str); const char* start = str; while (*str) //'\0'的ASCII值为〇 { str++; } return str-start; } int my_strlen(char* str) { assert(str); int len=0; while(*str++) { len++; } }测试代码:
int main() { int ret = 0; char str[] = "To love and to loved is the greatest happiness of existence."; ret = my_strlen(str); printf("%d\n",ret); return 0; }