Форум программистов, компьютерный форум CyberForum.ru

Определение размера динамического массива - C++

Восстановить пароль Регистрация
 
asinxron
0 / 0 / 0
Регистрация: 20.11.2015
Сообщений: 24
21.02.2016, 18:03     Определение размера динамического массива #1
Вопрос может не много глупый, но я подзабыл с.
Считаю размер динамического массива и результат получается неверный, логическую ошибку найти не могу.

C
1
2
3
4
5
6
7
8
9
10
11
12
  int* mas=(int*)calloc(256, sizeof(int));
 
  for(int i=0;i<=256;i++)
  mas[i]=10000;
 
 
  mexPrintf ("\n---------=%d",mas[256]);
 
 
  
 int ramer_mass=sizeof(mas)/sizeof(mas[0]);
 mexPrintf ("\n---------------------=%d\n\n\n",ramer_mass);
Результат размер массива 2 элемента
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Usaga
 Аватар для Usaga
901 / 692 / 138
Регистрация: 21.01.2016
Сообщений: 2,519
Завершенные тесты: 2
21.02.2016, 21:04     Определение размера динамического массива #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Вам придётся самому следить за размером массива выделяемого во время исполнения программы. С++ позволяет отслеживать только статические массивы.

Рекомендую посмотреть в сторону контейнеров. На крайний случай используйте std::array.
nd2
1048 / 787 / 267
Регистрация: 29.01.2016
Сообщений: 2,460
22.02.2016, 00:01     Определение размера динамического массива #3
sizeof(mas) выдаст размер указателя.
asinxron
0 / 0 / 0
Регистрация: 20.11.2015
Сообщений: 24
22.02.2016, 08:04  [ТС]     Определение размера динамического массива #4
Добавлено через 1 минуту
Контейнеры вещь хорошая, но не могу использовать,матлаб не поймет их, только ограниченный функционал, так что буду сам следить за памятью...спасибо за пояснение
Yandex
Объявления
22.02.2016, 08:04     Определение размера динамического массива
Ответ Создать тему
Опции темы

Текущее время: 07:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru