数组中的逻辑大小(元素数)

时间:2014-01-24 00:23:55

标签: c++ arrays

我有一个数组(在下面定义),我想找到它中的元素数量并发送mehtod调用。

所以,我有这个:

const int MAX_SIZE = 20;          // Maximum size of data array
double givenDataPoints[MAX_SIZE] = {0, 2, 3.8, 5, 9, 16, 16.2, 17, 18, 19, 19.5};

我想得到

int logicalSize = //this should be 10 because I only put in 10 numbers, not 20

我该怎么做?

1 个答案:

答案 0 :(得分:3)

我强烈建议使用标准库:

http://www.cplusplus.com/reference/array/array/size/

但你也可以这样做:

sizeof(givenDataPoints)/ sizeof(givenDataPoints [0]);

但是你会得到20,因为你告诉编译器为20个元素分配空间。

您需要跟踪被视为空元素的内容。

以下是一个类似的问题:Find the count of elements in array in C++

我希望它有所帮助。