【问题标题】:How to find number of elements in dynamic array如何查找动态数组中的元素个数
【发布时间】:2013-10-05 16:52:45
【问题描述】:

我有以下声明:

char ***a;
a = new char**[1];
a[0] = new char*[2];
a[0][0] = "Dynamic";
a[0][1] = "Array";

现在我需要找出“a”和“a[0]”中的元素数量。如何在 C 或 C++ 中做到这一点?

【问题讨论】:

标签: c++ arrays pointers sizeof


【解决方案1】:

据我所知,当您将数组的第一个元素作为指向某个函数/方法的指针传递时,无法找到动态分配的数组中的元素数量。最佳做法是避免使用此类数组,并在使用时将已分配元素的数量与指针一起传递。

void doSomething(int * p, int elms) {
//...
}

int main(){
 int * arr = new int[10];
 doSomething(arr, 10);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-19
    • 2015-08-22
    • 2015-11-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多