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

Вниз

Сopy и SetLength   Найти похожие ветки 

 
007bond   (2003-02-20 18:30) [0]

програмисты подскажите
как правильно удалить найденый символ из динамического массива?
фунциями Сopy и SetLength у меня не получается.


 
jack128 ©   (2003-02-20 19:01) [1]

type
TDinArrayOfInteger = array of integer;
procedure DeleteFromArray(var Arr : TDinArrayOfInteger; Index,Count : integer);
var PSource, PDest : PInteger;
begin
PSourse := PInteger(Integer(@Arr[0])+4*(Index+Count));
PDest := PInteger(Integer(@Arr[0])+4*Index);
Move(PSource^,PDest^,SizeOf(integer)*(Length(Arr)-Count));
SetLength(Arr,Length(Arr)-Count);
end;

+ надо добавить проверкуна коректность значений Index и Count...

ЗЫ хотя стандартная ф-ция наверника есть..


 
Mikhail ©   (2003-02-20 19:22) [2]

Move


 
shodan   (2003-02-20 20:33) [3]

var DynArray : array of integer;
for i:=IndexofArray+1 to Length(DynArray)-1 do
DynArray[i-1]:=DynArray[i];
if Length(DynArray) > 0 then SetLength(DynArray,Length(DynArray)-1);


 
PVOzerski ©   (2003-02-21 06:30) [4]

Но если у Вас в массиве СИМВОЛЫ, может, логичнее использовать не массив, а длинную строку? К ней и функций полезных много. Delete, например.



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
4-5908
sel
2002-12-19 08:50
2003.03.03
Отловить подключение к компьютеру по сети


3-5443
mate
2003-02-13 11:47
2003.03.03
BDE , ADO и MSSQL


6-5693
bkv
2003-01-13 11:14
2003.03.03
Как узнать свое имя в локальной сети?


1-5551
Lex
2003-02-20 15:00
2003.03.03
Ребята, помогите пожалуйста решить задачу на паскале! Очень надо!


1-5569
[HDD]John
2003-02-19 14:56
2003.03.03
Убрать с формы