Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.011 c
1-72228
Джин
2003-01-14 15:31
2003.01.23
Создание компонент


7-72573
mate
2002-11-11 12:39
2003.01.23
Windows


1-72358
YY
2003-01-11 23:14
2003.01.23
Запуск Application.Run несколько раз


3-72036
Delphinium
2003-01-04 22:54
2003.01.23
Составные ключи в InterBase


14-72504
Юров Владимир
2003-01-06 18:18
2003.01.23
Win2000+Win2000




   Наверх