Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2009.11.29;
Скачать: [xml.tar.bz2];

Вниз

Динамический массив   Найти похожие ветки 

 
Nik   (2008-10-03 15:55) [0]

Здорово All!
 Как определить количество в байтах выделенных под динамический массив?


 
Сергей М. ©   (2008-10-03 16:14) [1]

размер заголовка + размер собственно данных, которыми оперирует заголовок


 
Nik   (2008-10-03 16:23) [2]

ммм....
 не совсем понял.
 У меня типизированный динамический массив. Как узнать размер заголовка? да и размер собственно данных оперируемых заголовком?
 надумал одни вариант... тупо посчитать сколько занимает каждая ячейка (по типам данных) и умножить на кол. ячеек массива.
 а нет ли какой либо функции которая просто вернет по указателю на массив?


 
jack128_   (2008-10-03 16:27) [3]

Result := Length(Arr) * SizeOf(Arr[0]) - это размер данных.  Размер заголовка - всегда 8 байт


 
Сергей М. ©   (2008-10-03 16:29) [4]


> Nik   (03.10.08 16:23) [2]


А тебе собссно зачем это понадобилось ?

Приведи пример кода с комментариями для иллюстрации требуемого контескта ..


 
Nik   (2008-10-03 16:36) [5]


> jack128_   (03.10.08 16:27) [3]
>
> Result := Length(Arr) * SizeOf(Arr[0]) - это размер данных.
>   Размер заголовка - всегда 8 байт

Спасибо! )


> Сергей М. ©   (03.10.08 16:29) [4]
>
>
> > Nik   (03.10.08 16:23) [2]
>
>
> А тебе собссно зачем это понадобилось ?
>
> Приведи пример кода с комментариями для иллюстрации требуемого
> контескта ..


Переполняется память... массив слишком длинный получаецо (.
 Нужно отследить когда он достигает определённого предела.
Например: (рабочий вариант в разы больше... и ооооочень древовиден ) )
MType = record
 I: Integer;
 B: string;
 A: XType {собственно тоже массив ~ такого же типа}
end;
FMType: array of MType;


 
Сергей М. ©   (2008-10-03 16:46) [6]


> Нужно отследить когда он достигает определённого предела


А кем или чем определяется этот предел ?

Ну, предположим, ты узнал, что текущий размер массива равен, скажем, 1 мбайт.

Что дальше ?


 
Сергей М. ©   (2008-10-03 16:48) [7]

И, кстати, какое отношение твой вопрос имеет к WinAPI ?
Дин.массивы. о которых ты ведешь речь, - штука специфичная для Делфи. Опер.система ничего не знает ни про какие дельфийские дин.массивы ..



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2009.11.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.009 c
15-1253966916
Константинов
2009-09-26 16:08
2009.11.29
Проблема с ПК


15-1254576288
vrem
2009-10-03 17:24
2009.11.29
Windows: странные задержки


2-1255364278
33Rus
2009-10-12 20:17
2009.11.29
Проблема с DeviceIoControl


2-1255507653
123123
2009-10-14 12:07
2009.11.29
отключить сочетание клавиш


15-1254375904
VladOfMonster
2009-10-01 09:45
2009.11.29
Где найти значки для панели инструментов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский