Форум: "Начинающим";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];
ВнизУказатели Найти похожие ветки
← →
EXILE (2006-03-30 16:37) [0]Всем привет, есть такая програмка:
type
TPStudent=^TStudent;
TStudent = record
f_name:string[20];
l_name:string[20];
next: TPStudent;
end;
var
head: TPStudent;
procedure TForm1.Button1Click(Sender: TObject);
var
node: TPStudent;
curr: TPStudent;
pre: TPStudent;
begin
new(node);
node^.f_name:=Edit1.Text;
node^.l_name:=Edit2.Text;
curr:=head;
pre:=NIL;
while (curr <> NIL) and (node.f_name > curr^.f_name) do
begin
pre:= curr;
curr:=curr^.next;
end;
if pre = NIL then
begin
node^. next: =head; head:=node;
end
else
begin
curr node^.next:=рre^.next;
рrе^.next:=node;
end;
Edit1.text:="";
Edit2.text:="";
Edit1.SetFocus;
end;
так то вроде все понятно кроме одного как работают указатели...ну вот к примеру взять это
while (curr <> nil) and (node.f_name>curr^.name) do
begin
pre:=curr;
curr:=curr^.next; // т.е. к следующему узлу, но как я понимаю если введенное значение больше текущего то предыдущему мы присваиваем текущее и по указателю текущего переходим к следующему...но следующим является pre, а так как pre:=curr, они содержат одни и теже данные.................
вообщем чето я не пойму как они обьясните кто нибуть простым языком что да как, (как работает вся прог-ма обьяснять не надо ток про указатели) плиз
← →
Anatoly Podgoretsky © (2006-03-30 16:41) [1]Они указывают куда то.
← →
Сергей М. © (2006-03-30 16:44) [2]
> обьяснять не надо ток про указатели
А иначе и нет смысла тебе что-то еще объяснять.
В работе механизма указателей - вся соль этого алгоритма.
← →
EXILE (2006-03-30 16:46) [3]:) это я и сам знаю, что кудато, непонятен сам принцып действия
вот это тож:
node^.next:=pre^.next // как я понял мы меняем местами указатели новый узел казывает на тот узел на который указывал предыдущий,
pre^.next:=node; // а предыдущий указывает на новый....вроде так
← →
EXILE (2006-03-30 16:47) [4]> Сергей М. © (30.03.06 16:44) [2]
Хм так я про их работу и спрашиваю
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c