C++ 获取数组长度
1 字符串数组
对于字符串数组,使用strlen()函数来获取字符串数组的长度。
char a1[] = "fwegweasdasdwqew";
cout << strlen(a1) << endl;
注意: strlen只能用char*做参数,且必须是以''\0''结尾的!
strlen 函数计算字符串的长度时,直到空结束字符,但不包括空结束字符
2 数字数组
例如: int arr[] = { 1,5,9,10,9,2 }; 可以用sizeof(a)/sizeof(a[0])来获取数组的长度。
原理:sizeof()函数可以返回数组所占的内存,而sizeof(a[0])返回的是数组第一个元素所占的内存。
所以式子:**sizeof(a)/sizeof(a[0])**得到的就是数组的个元素个数,也就是数组的长度。
举例说明:
#include<iostream>
using namespace std;
template<class T>
int length(T& arr)
{
//cout << sizeof(arr[0]) << endl;
//cout << sizeof(arr) << endl;
return sizeof(arr) / sizeof(arr[0]);
}
int main()
{
int arr[] = { 1,5,9,10,9,2 };
// 方法一
cout << "数组的长度为:" << length(arr) << endl;
// 方法二
//cout << end(arr) << endl;
//cout << begin(arr) << endl;
cout << "数组的长度为:" << end(arr)-begin(arr) << endl;
system("pause");
return 0;
}

---------------------
作者:zou_albert
来源:CSDN
原文:https://blog.csdn.net/zou_albert/article/details/107337756
版权声明:本文为作者原创文章,转载请附上博文链接!
内容解析By:CSDN,CNBLOG博客文章一键转载插件

2222

被折叠的 条评论
为什么被折叠?



