Как найти количество элементов в динамическом массиве

0

У меня есть следующее объявление:

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

Теперь мне нужно найти количество элементов в "a", а также в "a [0]". Как я могу сделать это на C или C++?

Теги:
arrays
pointers
sizeof

1 ответ

2

Насколько я знаю, нет способа найти число элементов в динамически распределенном массиве, когда вы передаете первый элемент массива в качестве указателя на некоторый метод/метод. Лучше всего избегать использования таких массивов, а когда вы используете его, передайте количество выделенных элементов вместе с указателем.

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

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню