получить длину зубчатого массива в C - PullRequest
0 голосов
/ 04 марта 2012

КОД:

int *Array[8];

  Array[0] = (int *) malloc(sizeof(int) * 5);

  printf("%d" , sizeof(Array)/sizeof(int));  // Result = 8 : True
  printf("%d" , sizeof(Array[0])/sizeof(int)); // Result = 1 : False

Как получить длину массива [0], равную 5?

1 Ответ

7 голосов
/ 04 марта 2012

Вы не можете.

Динамические массивы в C не несут с собой информацию о своей длине. Поэтому вам нужно написать свой код, чтобы помнить, что он выделил что-то длиной 5.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...