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

Вниз

занулить многомерный массив   Найти похожие ветки 

 
Piero   (2010-04-08 17:30) [0]

есть такие строки:
 for i1 := 1 to 2 do
   for i := 1 to 12 do
     begin
       ks[i1, i] := 0;
     end;

можно вместо этого писать так:
 fillchar(ks,sizeof(ks),0);
или
 fillmemmory?

в чем разница между ними?

я всегда думал что можно и даже нужно т.к. работает быстрее, но недавно один коллега сказал, что он имел проблеммы с fillchar, под DOTNET....


 
Dimka Maslov ©   (2010-04-08 17:33) [1]

FillChar есть небезопасная операция


 
Правильный$Вася   (2010-04-08 18:17) [2]

а массив динамический или статический?


 
Anatoly Podgoretsky ©   (2010-04-08 19:42) [3]

> Piero  (08.04.2010 17:30:00)  [0]

Так писать нельзя, будет утечка памяти. И за что боремся то, за 24 ячейки, тьфу


 
Anatoly Podgoretsky ©   (2010-04-08 19:42) [4]

> Dimka Maslov  (08.04.2010 17:33:01)  [1]

Это фторое фи


 
Б   (2010-04-08 21:24) [5]

> Piero   (08.04.10 17:30)  

> в чем разница между ними?


Разницы никакой.
Держи нажатым Ctrl и наведи курсор на FillMemory, пройдя
по ссылке увидишь, что вызывается тот самый FillChar.


 
Loginov Dmitry ©   (2010-04-08 23:55) [6]


> но недавно один коллега сказал, что он имел проблеммы с
> fillchar, под DOTNET....


И причем тут DOTNET...


 
Германн ©   (2010-04-09 02:50) [7]


> Dimka Maslov ©   (08.04.10 17:33) [1]
>
> FillChar есть небезопасная операция
>

Хм. А чем небезопасная?


 
Anatoly Podgoretsky ©   (2010-04-09 11:35) [8]

> Loginov Dmitry  (08.04.2010 23:55:06)  [6]

На DOTNET запрещено, поскольку функция не Managed


 
Anatoly Podgoretsky ©   (2010-04-09 11:42) [9]

> Германн  (09.04.2010 02:50:07)  [7]

Тем что Unmanaged


 
Piero   (2010-04-09 13:25) [10]

массив статический
количество ячеек может быть намного больше
так значи единственный нормальный путь это занулять по одному элементу?
а если массив динамический, что меняется?


 
Sha ©   (2010-04-09 13:52) [11]

Ответ может зависеть от того,
как обьявлен массив
и зачем надо его "занулять" (каков алгоритм последующей работы с ним).


 
Anatoly Podgoretsky ©   (2010-04-09 13:57) [12]

> Piero  (09.04.2010 13:25:10)  [10]

Многое меняется, в первом измерение не данные, а ссылка на второе измерение, на второй массив, поскольку никаких многомерных динамическиъ массивов нет, а есть array of array of



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

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

Наверх




Память: 0.49 MB
Время: 0.062 c
15-1267574302
DillerXX
2010-03-03 02:58
2010.08.27
Может тут мне помогут с вопросом о модеме?


11-1220845969
Dmitro
2008-09-08 07:52
2010.08.27
Управление Selection в ListView


2-1273134658
noob_one
2010-05-06 12:30
2010.08.27
Какой функцией можно перевести "код" в #1050#1086#1076.


2-1268604733
Mer01
2010-03-15 01:12
2010.08.27
Ошибка доступа к памяти (указатели)


3-1240340701
VoznikVopros
2009-04-21 23:05
2010.08.27
Как произвести "выделение" в DBLookupListBox1 согласно № эл. в БД