我看到有人发布了这个函数,它返回一个字符串的长度。有人可以逐行向我解释发生了什么,因为我没有得到* s指针发生的事情,以及它如何能够逐个遍历字符串并计算字符串中的字符数量。这个函数来自FreeBSD
size_t
strlen(const char *str)
{
const char *s;
for (s = str; *s; ++s);
return(s - str);
}
答案 0 :(得分:2)
size_t
strlen(const char *str)
{
const char *s; // init pointer
for (s = str; *s; ++s); // set pointer to beginning of str, and increment pointer until
// you reach '\0', which is the end of the string
return(s - str); // compute the distance between end and beginning of string
// (s points to end of string, str points to beginning of string)
}