汗,这个意思啊。用容器阿。
#include<vector>
vector<string> a;
apush_back(""A);
放多少都可以。
然后用
asize()就可以知道了。vector类是很强大的。用起来特别方便
你这个问题很含糊。
假设是可以解决的方式:
type a[] = {}; // 这种情况就是不知道数组元素个数,“”的意思是,对数组赋初值的初值个数不确定。type为任意正确的数据类型。
那么:sizeof(a) / sizeof(type)
就可以得到数组元素个数了。
但是,如果把这个数组的数组名,通过实参传递给其它函数了,那么,上面的 *** 作就是不正确的了。因为,所有的形参都只能是变量,绝对不可能是数组。例如:
void fun(type b[100])
{
// 表面上b是一个数组,其实b是一个type 的指针变量,只占用4B的存储空间。
printf("%d\n", sizeof(b));
// 上面的输出语句,其输出结果应该是4,无论type类型是什么。
}
所以,如果你确实不知道数组里有多少个元素,那么,应该说,很难对这个数组进行 *** 作。
上面所述都基于C语言,Java等不存在这样的问题。因为,在Java中,数组根本就是类类型,有length成员可以得到数组元素个数。
领用下面代码可获取数组个数:
(UBound(A,1)-LBound(A,1))((UBound(A,2)-LBound(A,2))
其中Ubound(A,1)为数组第一维上限,Lbound(A,1)为数组第一维下限,二者相减及为数组第一维的个数,同理,后面是数组第二维的个数,两者的乘积即该数组所有元素的个数。
Dim
A(1
To
6,
6)
As
String定义的数组包含的元素个数是42
Dim
A(6,
6)
As
Integer定义的数组包含的元素个数是49,二维数组,长宽都是是7
Dim
B(10
To
20)
定义的数组元素个数是11,UBound(数组名)-LBound(数组名)+1,20-10+1=11
a10(5)相当于在一维数组的5个点
b
(3,4)相当于在二维数组里的12个点(x轴上三个点,y轴上四个点)
c
(1
to
5,2
to
4,
3
to
6)相当于在三维数组里的60个点(5×3×4)
dim
a10(5):一维数组,限5;整型
dim
b(3,4):二维,限3,4;整型
dim
c(1
to
5,2
to
4,3
to
6):三维,限5,3,4
以上就是关于如何求得一个string数组的元素个数每个元素长度不一全部的内容,包括:如何求得一个string数组的元素个数每个元素长度不一、不知道一个数组里有多少个元素.怎么去读取它、Excel中VB编程如何获取数组的元素个数和维数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)