Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.23;
Скачать: CL | DM;

Вниз

Инициализация record ов   Найти похожие ветки 

 
smok_er   (2003-01-15 12:01) [0]

Мастера! Как при выделении памяти под рекорд сразу его проинициализировать, например, нулями?
А то какая-то каша, например 1,234345645767E10 и т.п.


 
RWolf   (2003-01-15 12:05) [1]

p:=AllocMem(sizeof(TRec));


 
smok_er   (2003-01-15 12:11) [2]

Спасибо, но...
Я сейчас делаю так:

Rec: PRecord;
New(Rec);
Rec^.a1 := 0;
Rec^.a2 := 0;
и т.д.

Вы можете слить наши примеры и показать, как правильно?


 
RWolf   (2003-01-15 12:14) [3]

Rec:=AllocMem(sizeof(TRec));
выделяет память и заполняет ее нулями.


 
still ©   (2003-01-15 12:15) [4]

FillChar(Rec, sizeof(Rec), 0);


 
RWolf   (2003-01-15 12:17) [5]

still, ты обнулил указатель
правильно - FillChar(Rec^, sizeof(TRec), 0);


 
REA ©   (2003-01-15 12:19) [6]

Аккуратнее с длинными строками - их в такие рикорды нельзя класть. Не инициализируются.


 
still ©   (2003-01-15 12:22) [7]

согласен. стормозил ...


 
smok_er   (2003-01-15 12:35) [8]

Т.е. теперь надо делать так:

Rec: PRecord;
New(Rec);
Rec:=AllocMem(sizeof(TRec));


 
RWolf   (2003-01-15 12:37) [9]

нет %)
Rec:=AllocMem(sizeof(TRec));
всё


 
smok_er   (2003-01-15 12:37) [10]

Сорри, ответчал на этот пост:

RWolf (15.01.03 12:14)
Rec:=AllocMem(sizeof(TRec));
выделяет память и заполняет ее нулями.



 
RWolf   (2003-01-15 12:39) [11]

освобождать память нужно будет так:
FreeMem(Rec);


 
smok_er   (2003-01-15 13:09) [12]

Мне это не нужно.
Прога нужна для просмотра отчетов и после построения последних сразу закрывается. А там уже дядя Билли все продумал :)
Хотя это некрасивый стиль программирования, но не хочется заниматься освобождением памяти


 
smok_er   (2003-01-15 13:10) [13]

RWolf (15.01.03 12:39)

Извини, забыл сказать самое главное - огромнейшее спасибо!



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

Текущий архив: 2003.01.23;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.018 c
4-72604
plaha999
2002-12-09 23:35
2003.01.23
Сообщения в Windows 9x


1-72185
REA
2003-01-13 11:43
2003.01.23
TObject харакири


1-72303
badaxe
2003-01-15 15:37
2003.01.23
Проблема с random


7-72569
cd1
2002-11-14 00:55
2003.01.23
Серийный номер материнской платы


1-72295
stone
2003-01-15 12:51
2003.01.23
Программное выключение компьютера. В чем ошибка?