Discussion:
Что это?
(слишком старое сообщение для ответа)
Ivan Kuvshinov
2006-05-11 13:15:32 UTC
Permalink
Вот на такое:

type
TstTyp = array[0..1] of Word;
const
source : String = '123';
var
dest : TstTyp := TstTyp(source);
end.

Ругается вот так:
dest : TstTyp := TstTyp(source);
↑
Warning: TEST01.PAS (line 6, col 20): source & dest.types in typecast must
have
same size

Что он хочет этим сказать?
Ivan Kuvshinov
2006-05-11 13:25:38 UTC
Permalink
IK> Warning: TEST01.PAS (line 6, col 20): source & dest.types in typecast
IK> Что он хочет этим сказать?
А вообще идея была в том, что уж больно ломает помнить, что надо потом
написать что-то вроде FillChar(dest,0) или даже писать дО специальную
константу, а нельзя сразу написать mas : array [0..1] of Byte := (1, 2);

Идея - сработала:
type
TstTyp = array[0..3] of Byte;
var
dest : TstTyp := TstTyp(#1#2#3#4);
count : Byte;
begin
for count := 0 to 3 do
WriteLn(dest[count]);
end.
Hо обидно, что приходится изворачиваться.. :(
Serg Klimenko
2006-05-11 20:18:00 UTC
Permalink
Огромный привет тебе, Ivan!

Почитывая письмо от Ivan Kuvshinov к All, написанное
11 Май 06 где-то в 18:25, решил я и сам что-нибудь добавить к этому разговору:

IK> А вообще идея была в том, что уж больно ломает помнить, что надо
IK> потом написать что-то вроде FillChar(dest,0) или даже писать дО
IK> специальную константу, а нельзя сразу написать mas : array [0..1] of
IK> Byte := (1, 2);

Hе помню как в TMT, а в BP такое объявление прокатывало, только не var, а
const. Ессно, переменную (массив) потом вполне себе можно было изменять.

┌ Российские метеорологи не ошибались, когда говорили, что весна98 будет бурной
│ и быстрой. Hо они забыли сказать, что после нее опять начнется зима!
└─ С ув. тов. Serg Klimenko aka LiON. [Team Digital Photo]
Ivan Kuvshinov
2006-05-11 21:16:03 UTC
Permalink
SK> Hе помню как в TMT, а в BP такое объявление прокатывало, только не var, а
SK> const. Ессно, переменную (массив) потом вполне себе можно было изменять.
Да, знаю, но я - принципиально не пользуюсь этими недо-переменными,
"благодаря" им невозможно объявить типизированную константу. В ТМТ же
существуют полноценные переменные с начальным значением.

КИА
Serg Klimenko
2006-05-12 16:22:59 UTC
Permalink
Огромный привет тебе, Ivan!

Почитывая письмо от Ivan Kuvshinov к Serg Klimenko, написанное
12 Май 06 где-то в 02:16, решил я и сам что-нибудь добавить к этому разговору:

SK>> Hе помню как в TMT, а в BP такое объявление прокатывало, только
SK>> не var, а const. Ессно, переменную (массив) потом вполне себе
SK>> можно было изменять.
IK> Да, знаю, но я - принципиально не пользуюсь этими недо-переменными,
IK> "благодаря" им невозможно объявить типизированную константу. В ТМТ же
IK> существуют полноценные переменные с начальным значением.

Hу не знаю. IMHO то, что сделал ты - гораздо хуже. Я уж не говорю о возможных
глюках кривого приведения типов, но твоя конструкция элементарно хуже читается.

┌ Белая подписка - эхи выписывают сисопов...
└─ С ув. тов. Serg Klimenko aka LiON. [Team Digital Photo]
Ivan Kuvshinov
2006-05-12 17:40:21 UTC
Permalink
SK> Hу не знаю. IMHO то, что сделал ты - гораздо хуже. Я уж не говорю о
SK> возможных глюках кривого приведения типов, но твоя конструкция
SK> элементарно хуже читается.
Да я, собственно - просто эксперементировал и смотрел - что из этого может
получиться. :-Р

КИА
Sergey Andrianov
2006-05-15 15:18:04 UTC
Permalink
Здравствуй, Ivan!

Однажды 11.05.06 в 18:15 Ivan Kuvshinov (2:5020/175.2)
написал All по поводу
-=- Что это? -=-

IK> Вот на такое:

IK> type
IK> TstTyp = array[0..1] of Word;
IK> const
IK> source : String = '123';
IK> var
IK> dest : TstTyp := TstTyp(source);
IK> end.

IK> Ругается вот так:
IK> dest : TstTyp := TstTyp(source);
IK> ↑
IK> Warning: TEST01.PAS (line 6, col 20): source & dest.types in typecast must
IK> have
IK> same size

IK> Что он хочет этим сказать?

Kакова длина массива из двух word'ов?
А какова длина строки?
То-то же!

До свидания, в 20:16 MSK
Sergey
Ivan Kuvshinov
2006-05-19 05:57:29 UTC
Permalink
SA> Kакова длина массива из двух word'ов?
SA> А какова длина строки?
SA> То-то же!
Хочешь сказать, под '123' зарезервировали больше 4 байтов?
Sergey Andrianov
2006-05-21 18:03:18 UTC
Permalink
Здравствуй, Ivan!

Однажды 19.05.06 в 10:57 Ivan Kuvshinov (2:5020/175.2)
написал Sergey Andrianov по поводу
-=- Re: Что это? -=-

SA>> Kакова длина массива из двух word'ов?
SA>> А какова длина строки?
SA>> То-то же!
IK> Хочешь сказать, под '123' зарезервировали больше 4 байтов?

Kонкретно 256 байтов.

До свидания, в 23:02 MSK
Sergey
Ivan Kuvshinov
2006-05-23 18:16:14 UTC
Permalink
IK>> Хочешь сказать, под '123' зарезервировали больше 4 байтов?
SA> Kонкретно 256 байтов.
Точно. Это я сглупил. Конечно я, вначале, пробовал со String[3], но я пытался
писать нечто вроде:
var
dest: TstTyp:=TstTyp(String3Typ('123'));
Hо такое ни под каким видом не проходило и при упрощениях я как раз этот
момент упустил.

КИА

Loading...