如何计算指针所指向的带有/0的字符串的大小



假设我有一个这样的char指针:

unsigned char* value="HelloHello";

我怎么能计算值的大小,因为strlen只计算字符串的大小,直到'/0',所以我不能使用strlen,也sizeof返回指针本身的长度,所以有任何方法来计算值的长度?

如何计算值的大小…我的程序结构不能使用数组,它应该是指针。

此场景没有内置函数。

计算字符串长度的唯一可能是:

  • string isdouble以空结尾,例如:HelloHello

  • 如果您提前知道在最后的空终止符之前字符串中存在多少个中间空字符。

在任何一种情况下,您都可以枚举字符串,计数字符并跳过中间的空,直到到达最终的空终止符。

如果这两种情况在你的情况下都不正确,那么你就倒霉了,除非你有一个带外的方法来知道字符串的长度。

最新更新