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

Вниз

Структура (запись)   Найти похожие ветки 

 
Tonich ©   (2005-09-14 11:40) [0]

Такой вопрос.
Можно ли по полям структуры пробежаться в цикле?


 
Ega23 ©   (2005-09-14 11:44) [1]

AFAIK - нет. Структура-структуре - Lupus Est.


 
Digitman ©   (2005-09-14 11:45) [2]

нельзя.


 
Tonich ©   (2005-09-14 11:48) [3]


> Ega23 ©   (14.09.05 11:44) [1]


> Digitman ©   (14.09.05 11:45) [2]

басибо )) так и думал, но для верности ....


 
Reindeer Moss Eater ©   (2005-09-14 12:09) [4]

По полям структуры можно пробежаться в цикле.


 
Tonich ©   (2005-09-14 12:14) [5]


> Reindeer Moss Eater ©   (14.09.05 12:09) [4]
поведай...


 
Reindeer Moss Eater ©   (2005-09-14 12:16) [6]

У структуры есть N полей.
У каждого поля есть длина.
Всегда можно написать цикл, в котором на каждой итерации иметь доступ к очередному полю.
В чем проблема-то?


 
jack128 ©   (2005-09-14 12:18) [7]

type
 TRec = record
   a: byte;
   b: string;
   с: Double;
 end;

for i := 0 to 2 do
 case i of
   0: Memo1.Lines.add(IntToStr(a));
   1: Memo1.Lines.add(b);
   2: Memo1.Lines.add(FloatToStr(с));
 end;


;)


 
Tonich ©   (2005-09-14 12:33) [8]


> jack128 ©   (14.09.05 12:18) [7]


нет вы меня конечно извините , но помоему это изврат какой-то

да и цикл странный )


> Memo1.Lines.add(IntToStr(a));
откуда будет известно что такое "а" это же поле структуры,

может выхотели написать

var rec:TRec;
Memo1.Lines.add(IntToStr(Rec.a));


тохда вообще пропадает весь смысл в этом цикле если и так перечисляем каждое поле структуры


 
Ega23 ©   (2005-09-14 12:36) [9]

У структуры есть N полей.

Угу. А если это union?


 
Reindeer Moss Eater ©   (2005-09-14 12:38) [10]

Поля по именам перечислять не надо.
Есть смещения от начала структуры.

тохда вообще пропадает весь смысл в этом цикле

Это не совсем так.
Смысл пропадает не в цикле.
Пропадает смысл в твоем вопросе.


 
Reindeer Moss Eater ©   (2005-09-14 12:41) [11]

Интересно, а что же ты вообще хотел сделать циклом?
Дай угадаю.
Проинициализировать значения полей?


 
REA   (2005-09-14 12:47) [12]

Можно объявить структуру с case массивом и бегать по ней. А что автору надо от пробегов по структуре?


 
Tonich ©   (2005-09-14 12:48) [13]


> Reindeer Moss Eater ©   (14.09.05 12:38) [10]

когда я говорил что  
> тохда вообще пропадает весь смысл в этом цикле

то имел ввиду  вот это
> jack128 ©   (14.09.05 12:18) [7]

а вы хотите сказать что там a,b,c -это смещения?????


> Reindeer Moss Eater ©   (14.09.05 12:41) [11]
нет


 
Reindeer Moss Eater ©   (2005-09-14 12:52) [14]

>а вы хотите сказать что там a,b,c -это смещения?????

А ты хочешь сказать, что это имена во время выполнения программы?
В рантайме нет никаких имен полей вообще.

Ну и какой смысл спрашивать про цикл, если смысла в цикле нет?
Есть в твоем вопросе смысл?


 
begin...end ©   (2005-09-14 12:53) [15]


> Tonich ©   (14.09.05 12:48) [13]


> а вы хотите сказать что там a,b,c -это смещения?????

a, b, c -- это поля. Но у каждого поля есть смещение от начала записи.


 
REA   (2005-09-14 12:54) [16]

А где прикол в [7]? можно еще пару циклов забабахать, чтобы читать сложнее было.


 
Reindeer Moss Eater ©   (2005-09-14 12:54) [17]

>Tonich ©   (14.09.05 11:40)  
>Такой вопрос.
>Можно ли по полям структуры пробежаться в цикле?


>По полям структуры можно пробежаться в цикле.

>тохда вообще пропадает весь смысл в этом цикле

С логикой дружим?


 
Reindeer Moss Eater ©   (2005-09-14 12:55) [18]

>a, b, c -- это поля. Но у каждого поля есть смещение от начала записи.

Расскажи это rtl.
Они полями остаются пока их компилятор не увидел.


 
Ega23 ©   (2005-09-14 12:55) [19]

А где прикол в [7]?

Так цикл же!  :о)


 
Tonich ©   (2005-09-14 12:59) [20]


> Reindeer Moss Eater ©   (14.09.05 12:52) [14]


вот что я хотел сказать  
> a, b, c -- это поля. Но у каждого поля есть смещение от
> начала записи.
но ни как не "a,b,c -это смещения"


> Есть в твоем вопросе смысл?
конечно есть, но видимо для некоторых он оказался скрытым )))

ладно все спасибо )


 
Игорь Шевченко ©   (2005-09-14 13:00) [21]

В .Net - можно :)


 
begin...end ©   (2005-09-14 13:01) [22]


> Reindeer Moss Eater ©   (14.09.05 12:55) [18]

Я пойду удавлюсь, ладно? a, b и c -- это идентификаторы полей. А не смещения.


 
Reindeer Moss Eater ©   (2005-09-14 14:08) [23]

Пока компилятор их не встретил, это идентификаторы.



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

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

Наверх




Память: 0.52 MB
Время: 0.05 c
1-1125928937
highlander
2005-09-05 18:02
2005.10.02
Работа с сервисами в WinXP


3-1124325156
Яков
2005-08-18 04:32
2005.10.02
Как в БД поменять столбцы со строками


3-1124345752
stud
2005-08-18 10:15
2005.10.02
удаление из строки всех букв MS SQL 2000


4-1123576343
Po
2005-08-09 12:32
2005.10.02
WinAPI процесс CD-ROM`a


3-1124263259
Andy BitOff
2005-08-17 11:20
2005.10.02
Все записи в StringList