需要查找数组中内容的数量

Need to find the number of contents in the array

本文关键字:查找 数组      更新时间:2023-10-16

我有一个字符数组,我想找出其中内容的数量。例如,我的数组是:

char myArray[10];

输入后的内容是:

ABC

现在我想存储一个变量'size',与内容相关的区域的大小。在这个例子中:

size = 3

我怎么找到它?

一种简单的方法是查找终止null的字符,这已经在c函数strlen中为您实现了,因此有两种方法可以做到这一点:

int StringLength( const char* str, int maxLength )
{
     for( int i = 0; i < maxLength; ++i )
     {
          if( str[i] == '' )
              return i;
     }
     return -1;
}

或者你可以像这样调用strlen:

int iLength = strlen( myArray ); 

然而,由于您已经标记了这个c++,最好的方法是不处理c风格的字符数组,而是使用非常有用的std::string类。

strlen(myArray)就是你想要的。

试试这个:

int len = strlen(myArray).

strlen是stdlib.h库的一部分。不要忘记在你的程序中声明它

将数组定义为char myArray[10];并不总是将其内容初始化为零,因此取决于您如何用ABC填充它,您可以或无法找到正确的长度。在最坏的情况下,常规的strlen()总是报告数字>10,甚至导致读访问中断。我尝试像char myArray[10] = {};这样初始化它