1:strlen函数是不安全的。
2:strnlen不是strlen的安全函数,
3:可以使用以下的函数作为strlen的安全函数
size_t safe_strlen(const char *str, size_t max_len)
{
const char * end = (const char *)memchr(str, '\0', max_len);
if (end == NULL)
return max_len;
else
return end - str;
}
Tags:
安全 strlen
安全 strlen