Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有以下声明:
char ***a; a = new char**[1]; a[0] = new char*[2]; a[0][0] = "Dynamic"; a[0][1] = "Array";
现在我需要找到“a”和“a[0]”中的元素数量。如何在 C 或 C++ 中执行此操作?
据我所知,当您将数组的第一个元素作为指向某个函数/方法的指针传递时,无法在动态分配的数组中找到元素的数量。最佳做法是避免使用此类数组,并且在使用它时,将已分配元素的数量与指针一起传递。
void doSomething(int * p, int elms) { //... } int main(){ int * arr = new int[10]; doSomething(arr, 10); }