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

Вниз

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

 
skirdov   (2002-11-19 15:04) [0]

Уважаемые, помогите разобраться.

У меня есть тип данных:
MyType = record
x: integer;
p: pointer
end;

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

Спасибо.


 
skirdov   (2002-11-19 15:09) [1]

Нашел!!!


 
Skier   (2002-11-19 15:09) [2]

>skirdov

PMyType = ^TMyType;
TMyType = record
x: integer;
p: PMyType;
end;

Это что ли имеется в виду ?


 
MBo   (2002-11-19 15:10) [3]

PA=^TA;
TA=record
x:integer;
next:PA;
end;

var A,A1:PA;

new(A);
new(A1);
A1.next:=A;


 
han_malign   (2002-11-19 15:15) [4]

type
PMyType = ^TMyType;
TMyType = record
Value: integer;
Next: PMyType;
end;
..................
var X,Head : PMyType;
begin
new(Head);
Head.Value:=...;
Head.Next:=nil;//!!! конец списка (если N=1)
X:=Head;// ни в коем случае не потерять начало списка
for i:=2 to N do begin
New(X.Next);
X:=X.Next;//итерация
X.Value:=...;
end;
X.Next:=nil;//!!! конец списка находится по Next=nil
....................
//итерации
X:=Head;
while X<>nil do begin
doSomeThing(X.Value)
X:=X.Next;//итерация
end;


 
MBo   (2002-11-19 15:27) [5]

Кстати, такая структура данных называется не массив, а связанный список



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

Форум: "Основная";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
3-92915
Andriano
2002-11-11 14:42
2002.11.28
Как в DBGrideEh получить номера выделенных строк?


14-93260
Deniss
2002-11-08 13:42
2002.11.28
Кто знает Аргус ... отзовитесь


6-93170
Slava V.
2002-10-02 11:44
2002.11.28
Перехват закачек из MS Internet Explorer.


8-93153
VEG
2002-07-28 00:22
2002.11.28
BASS.DLL version 1.5a


1-93034
Krog
2002-11-19 13:08
2002.11.28
как узнать размер класса





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский