Вниз
Скачать: CL | DM;

А вот и задачка :-))   Найти похожие ветки 

 
Romkin ©   (2003-03-12 16:36) [0]


var
p: PInteger;
a, diff: Integer;
begin
p := @a;
inc(p,3);
diff := integer(p) - integer(@a);
end;

Без компиляции - какое число в diff?


 
Romkin ©   (2003-03-12 16:39) [1]

Интересно, как скоро ее удалят...
На самом деле, это просто предостережение об аккуратной работе с указателями. Я с ними очень давно не работал, вот и напоролся...


 
vuk ©   (2003-03-12 16:41) [2]

А чем она не понравилось, что её удаляют? Не догоняю что-то...


 
Anatoly Podgoretsky ©   (2003-03-12 16:41) [3]

12 ?


 
uw ©   (2003-03-12 16:43) [4]

4 или -4


 
uw ©   (2003-03-12 16:44) [5]

Тьфу...


 
Romkin ©   (2003-03-12 16:44) [6]

А фиг его знает :-))
Кстати, это было навеяно вопросом по С:
printf("%d\n", (int *)2 + 3);
что выдаст? ;-)


 
Delirium^.Tremens ©   (2003-03-12 16:45) [7]


> vuk © (12.03.03 16:41)
> А чем она не понравилось, что её удаляют? Не догоняю что-то...

Это документ ДСП в Borland и удаляется из соображений секретности
:-)


 
Юрий Зотов ©   (2003-03-12 16:50) [8]

3 * SizeOf(Pointer).
12.


 
Digitman ©   (2003-03-12 16:50) [9]

конечно - 12 ! а что же еще ?)


 
Romkin ©   (2003-03-12 16:51) [10]

2Юрий Зотов SizeOf(Integer) ;-))


 
Anatoly Podgoretsky ©   (2003-03-12 16:53) [11]

Естественно, ведь типизированный указатель.
Хотя так писать не стоит.


 
Ihor Osov'yak ©   (2003-03-12 16:55) [12]

> Юрий Зотов © (12.03.03 16:50)

Если мне не изменяет память, то 3 * SizeOf(того типа, с которым єтот поинтер ассоциирован). То есть, в данном случае 12...
Но в общем может быть и не так. Для нетипизированных указателей такая операция недопустимая... Синтаксис..


 
vuk ©   (2003-03-12 16:59) [13]

Из Help:

procedure Inc(var X [ ; N: Longint ] );

...

Note: If X is a pointer type, it increments X by N times the size of the type pointed to.


 
REA ©   (2003-03-12 17:28) [14]

Дык эта ну 12 вроде и будет... а в чем прикол?


 
Romkin ©   (2003-03-12 18:22) [15]

Прикол в том, что я ожидал 3 :-))



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

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



Память: 0.47 MB
Время: 0.015 c
14-88170
R
2003-03-11 03:57
2003.03.27
Как вставить в свой компонент иконку


9-87768
JB
2002-10-28 12:05
2003.03.27
Всё те же спрайты................................................


3-87833
scream
2003-03-08 10:27
2003.03.27
Help with Blob(Stream)


1-87959
maximkus
2003-03-17 21:55
2003.03.27
Как отключить сочетание alt+f4 ???


1-87907
Silver_
2003-03-17 09:29
2003.03.27
Form_ActiveControl_OnChange(Sender: TObject);




   Наверх