Сpд Апp 06 2005 12:01, Michael Zaichenko писал к Dima Orlov:
MZ> Это я знаю. а вот как в паскале заполнить массив из структур на MZ> этапе компиляции ?
Пример из мануала к D6:
type TCube = array[0..1, 0..1, 0..1] of Integer; const Maze: TCube = (((0, 1), (2, 3)), ((4, 5), (6,7)));
MZ> не мог имхо турбо-паскать этого.
Возможно. Hо кого это сейчас интересует ;)?
С наилучшими пожеланиями, Dmitri.
D
Dmitri Litovchenko
Приветствую Вас, многоуважаемый/ая/ое Sergey!
Сpд Апp 06 2005 09:21, Sergey Davydov писал к Vadim Grigorenko:
SD> pаботы с указателями, то Си намного фичастее. По сути указатель - это SD> адpес, а адpес - суть целое число, а адpесная аpифметика в Си pазвита SD> очень хоpошо. В отличии от Паскаля, где ее считай что вообще нет.
Для больших любителей C она там есть. Hо, используя адресную арифметику в Паскале, задумайся, что ты не так делаешь :))).
С наилучшими пожеланиями, Dmitri.
Y
Yuriy K
Thu Apr 07 2005 02:08, Alex Mogilnikov wrote to Sergey Davydov:
SD>> IMHO если вместо часто встpечающегося SD>> int *ptr; SD>> написать SD>> int* ptr; SD>> то все становится на свои места. В этом случае int* - это тип, а ptr - SD>> это имя.
AM> Отлично. Особенно если написать AM> int* a,b; AM> Сразу видно, что переменные a и b имеют разные типы. :)))
Такой "стиль" должен быть запрещен к употреблению приказом по фирме.
В одной строчке могут быть только переменные одного типа.
WBR, Yuriy.
S
Sergey Davydov
Hello Harry.
06 Apr 05 16:17, Harry Zhurov wrote to me:
SD>> int *ptr; SD>> написать SD>> int* ptr; SD>> то все становится на свои места. В этом случае int* - это тип, а SD>> ptr - это имя. Тогда все получается стpойно и логично. HZ> Мне тоже так понятнее и пpедпочтительнее. Тем не менее, HZ> идеологически более пpавильно int *ptr, котоpое означает, что ptr - HZ> это сущность, пpи pазыменовывании котоpой (т.е. после пpименения к ней HZ> *), получается int. Hавеpно у меня последствия ассемблеpного мышления :) Указатель - более абстpактная сущность, чем адpес :) SD>> Взаимозаменяемость указателя и массива тоже бывает удобной. HZ> Hет такой взаимозаменяемости. Есть автоматическое пpеобpазование HZ> типа массива к типу указателя на пеpвый элемент массива. Я имел в виду случаи вpоде *(ptr + 1) и ptr[1]
Sergey
S
Sergey Davydov
Hello Vadim.
06 Apr 05 19:43, you wrote to me:
SD>> IMHO если вместо часто встpечающегося SD>> int *ptr; SD>> написать SD>> int* ptr; SD>> то все становится на свои места. VR> Ага, особенно int* ptr, ptr2; Я стаpаюсь не мешать в кучу pазные типы :)
Sergey
A
Alex Mogilnikov
Привет Sergey!
06 Apr 05 09:21, Sergey Davydov писал Vadim Grigorenko:
SD> IMHO если вместо часто встpечающегося SD> int *ptr; SD> написать SD> int* ptr; SD> то все становится на свои места. В этом случае int* - это тип, а ptr - SD> это имя.
Отлично. Особенно если написать
int* a,b;
Сразу видно, что переменные a и b имеют разные типы. :)))
Всего наилучшего, [Team PCAD 2000] Алексей М. ... Вышла корова в чисто поле, да всё его и запачкала.
G
George Shepelev
Michael, ты ещё здесь сидишь?
Среда Апрель 06 2005 11:01, Michael Zaichenko wrote to Dima Orlov:
MZ> Это я знаю. а вот как в паскале заполнить массив из структур на MZ> этапе компиляции ? MZ> не мог имхо турбо-паскать этого.
Запросто делал ;-)
Георгий
N
Nickita A Startcev
Привет, Sergey !
07 Apr 05 , 01:03 Sergey Davydov писал к Vadim Rumyantsev:
SD>>> IMHO если вместо часто встpечающегося SD>>> int *ptr; SD>>> написать SD>>> int* ptr; SD>>> то все становится на свои места. VR>> Ага, особенно int* ptr, ptr2; SD> Я стаpаюсь не мешать в кучу pазные типы :)
Дык по строчке "int* a,b;" менее очевидно, что они разного типа, а по строчке "int *a, b;" более очевидно.
ps: помню библиотеку от одного деятеля, в ней одновременно было int16, word, WORD и Word типы. Мрак и бардак.
. С уважением, Hикита. icq:240059686, lj-user:nicka_startcev ... выкинуть ящик с трубадурами
K
Kirill Frolov
ôÏÇÄÁ 0[ptr]=0. ðÁÓËÁÌØ ÔÁË ÎÅ ÍÏÖÅÔ, ÜÔÏ ÔÏÞÎÏ.
G
George Shepelev
Kirill, ты ещё здесь сидишь?
Четверг Апрель 07 2005 23:35, Kirill Frolov wrote to George Shepelev:
KF> Тогда 0[ptr]=0. Паскаль так не может, это точно.
В этом и заключается одно из безусловных достоинств паскаля! ;-)
Георгий
K
Kirill Frolov
HÕ É ËÁË ÅÇÏ, ÂÅÚ ÁÓÓÅÍÂÌÅÒÁ, ÐÒÉÍÅÎÉÔØ? (FnAddr)
K
Kirill Frolov
èÏÒÏÛÏ ÔÁË ÂÏÒÀÔÓÑ, ÞÔÏ ÎÕ ÎÉËÁË ÎÅ ÐÏÍÏÇÁÅÔ. áÂÓÏÌÀÔÎÏ ÎÉËÁË. éÂÏ É ÓÔÅË ÉÓÐÏÌÎÑÅÍÙÊ, É ÄÁÖÅ ÎÅÉÓÐÏÌÎÑÅÍÙÊ ÎÅ ÐÁÎÁÃÅÑ...
C ÐÏ-ÓÔÁÒÛÅ ÂÕÄÅÔ.
M
Michael Zaichenko
Hi Dima,
Wed Apr 06 2005 19:54, Dima Orlov wrote to Michael Zaichenko:
DO> Вот это точно мог:
DO> Functions : Array[0..FnCount] of TFn = DO> ((FnName: '@('; FnArgs : 0; FnAddr : @GetData), DO> (FnName: '&('; FnArgs : 0; FnAddr : @GetCommon), DO> (FnName: 'INITRS('; FnArgs : 1; FnAddr : @Init_RS), DO> (FnName: 'MENU('; FnArgs : 1; FnAddr : @Menu), DO> (FnName: 'SEND('; FnArgs : 2; FnAddr : @Send), DO> (FnName: 'STOP('; FnArgs : 1; FnAddr : @Stop)); не знал что он такое может. Знать бы это лет 13 назад...
WBR, Michael
D
Dima Orlov
Hello, Michael Zaichenko !
Hадо было еще тогда читать борландовское руководство по языку, кстати оно было переведено на русский и гуляло по сетям. Я это скопировал из исходника, как раз помеченного 93 годом...
С уважением, Дима Орлов.
M
Michael Zaichenko
Hi Dima,
Sat Apr 09 2005 10:05, Dima Orlov wrote to Michael Zaichenko:
DO> Hадо было еще тогда читать борландовское руководство по языку, кстати оно DO> было переведено на русский и гуляло по сетям. Я это скопировал из DO> исходника, как раз помеченного 93 годом... В те далекие годы я был счастлив иметь компилятор, а swag казался совершенством. потом была на паскале реализован прога по расчету зарплаты... Вобщем это был мой первый коммерческий проджект. Проработал лет 9 без глюков. Hо после того как я отладил это... турбина была похоренена как только ко мне попал stony brook pascal+, через полгода я ушел профессионально в пролог, и скоро борланд и паскаль похоронил навсегда.
WBR, Michael
D
Dima Orlov
Hello, Michael Zaichenko !
swag - всегда был практически бесполезным набором хакерского и по большей части любительского кода. При наличии ворованных библиотек от Turbo Power (Turbo Professional и Object Professional) плюс родных борландовских сорцов, я ничего полезного из них не почерпнул. А вот доку было читать таки полезно...
Увы, как был, так и остался убогой недоделкой. Хотя на его базе я сделал чисто embedded проект, полностью дизассемблировав и перетрусив его RTL. Это был контроллер на базе 8086/87 или 8088 (то есть были разные платформы), и заказчик тогдашний хотел их сам программировать, причем именно на паскале. Сделать на базе ТР это не получилось, а SB как раз подошел, тем более, что качество кодогенерации у него не в пример выше, но вот все остальное... Кстати, хоть это уже давно представляет только историчесикй интерес, весь проект доступен у меня на сайте, как в прежние времена был доступен на BBS/Fido FRQ (к вопросу обо всяких open sourses и служению мамоне). Как и куча других легальных и пиратских эхотажных вещей.
Hу а я ушел в чистый embedded и соответственно С.
С уважением, Дима Орлов.
M
Michael Zaichenko
Hi Dima,
Sun Apr 10 2005 00:19, Dima Orlov wrote to Michael Zaichenko:
DO> Hello, Michael Zaichenko !
DO> swag - всегда был практически бесполезным набором хакерского и по большей DO> части любительского кода. При наличии ворованных библиотек от Turbo Power Hа 99% согласен. но всеже там была пара - тройка довольно интересных компонентов в плане идеи. потом спустя пару лет, гору разных библиотек с исходниками. Сильно удивился обилию качественных и серьезных сишных и почти полной мусорностю паскалевских. был сделан вывод в пользу С :)
DO> (Turbo Professional и Object Professional) плюс родных борландовских DO> сорцов, я ничего полезного из них не почерпнул. А вот доку было читать DO> таки полезно... Доку всегда читать полезно, но небыло ее тогда.
DO> Увы, как был, так и остался убогой недоделкой. Хотя на его базе я сделал Дык он вроде заглох еще в те годы. или таки развивался?
DO> чисто embedded проект, полностью дизассемблировав и перетрусив его RTL. DO> Это был контроллер на базе 8086/87 или 8088 (то есть были разные DO> платформы), и заказчик тогдашний хотел их сам программировать, причем DO> именно на паскале. Сделать на базе ТР это не получилось, а SB как раз DO> подошел, тем более, что качество кодогенерации у него не в пример выше, DO> но вот все остальное... У него был нормальный компилятор и линкер. этого уже достаточно чтобы похоронить турбину как компилятор, оставив только IDE.
DO> Кстати, хоть это уже давно представляет только DO> историчесикй интерес, весь проект доступен у меня на сайте, как в прежние DO> времена был доступен на BBS/Fido FRQ (к вопросу обо всяких open sourses и DO> служению мамоне). Как и куча других легальных и пиратских эхотажных DO> вещей. Гляну при случае.
DO> Hу а я ушел в чистый embedded и соответственно С. И я ушел, почти год как.
WBR, Michael
D
Dima Orlov
Hello, Michael Zaichenko !
Я даже занимался в свое время прикручиванием сишных библиотек к паскалю, полный переход на С был тогда уже слишком сложен.
У меня была... Причем, как я уже говорил, даже на русском.
Примерно в те годы я заглох, в смысле перестал интересоваться вопросом. Вроде выходила еще какая-то версия, но я уже не следил.
Для embedded - да, а для РС под него не было ни TV, ни Turbo Pro ни Objects Pro ни целого ряда других важных библиотек. И перенос представлялся проблематичным. Тем более, что на больших проектах его преимущества уже не казались таким уж большими. Или там smart link не работал нормально, или еще что, я уже не помню.
А я уже лет 8-9 как...
С уважением, Дима Орлов.
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.