gpt4 book ai didi

c++ - strnlen 在 C++ 中如何工作?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:04:56 24 4
gpt4 key购买 nike

我很困惑 strnlen 如何在 C++ 中使用非 null 终止的字符串,因为我不确定它如何计算大小。 strlen 的实现很简单:

size_t strlen(char *s)
{
size_t sz;
while(*s++ != '\0')
{
++sz;
}
return sz;
}

但是您将如何实现 strnlen()

最佳答案

πάντα ῥεῖ's answer短一点:

size_t strnlen(const char * s, size_t len) {
size_t i = 0;
for ( ; i < len && s[i] != '\0'; ++i);
return i;
}

编辑:

为了向 future 的读者和可能的反对者澄清,当我写这个答案时,我的代码实际上更短了。现在不是了,因为另一个帖子被编辑了。我不认为这应该成为对我投反对票的理由。

关于c++ - strnlen 在 C++ 中如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21536064/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com