Преобразование C -> PAS

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
Гость

Сообщение Гость »

каковы отличия и сходства между FP и C ?
SergKam
постоялец
Сообщения: 251
Зарегистрирован: 16.11.2005 20:31:11
Откуда: Украина,Харьков

Сообщение SergKam »

Ничего себе вопросик!
Каковы отличия и сходства жирафа с носорогом?
можкт чтото более конкретное интересует?
Гость

Сообщение Гость »

:)
Действительно, я немного не так задал вопрос.

попробую сформулировать немного по другому:
Есть программа на С и есть Freepascal... на что нужно обратить внимание при ее переносе ?
какие конструкции языка есть в С и нет в FP ? Какие конструкции сходны и не требуют "изврата" ? и т.д и т.п в том же духе...


<span style='font-size:8pt;line-height:100%'><span style='color:red'>*</span> если зарегистрироваться, то можно редактировать свои сообщения ;)</span>
Аватара пользователя
STAKANOV
энтузиаст
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение STAKANOV »

какие конструкции языка есть в С и нет в FP ? Какие конструкции сходны и не требуют "изврата" ?

все основные конструкции совпадают, проблемы возможно будут в деталях ;)
stassats

Сообщение stassats »

Да можно переписать с паскаля хоть на асм хоть на лисп, было бы желание ;)
Janus
постоялец
Сообщения: 134
Зарегистрирован: 07.11.2005 16:06:49

Сообщение Janus »

Хе, на асм :lol: :lol: :lol: Да тут и переписывать не надо, просто скажи компилятору, не удалять асм-файл после трансляции. Компилятор ppc386 как раз и делает то, что "переписывает" с паскаля на Ассемблер.

А вообще, лучше не переписывать прям так с С на Pascal - дороже выйдет. Можно скомпилировать модули на С, а потом линковать их к программе на паскале и импортировать нужные функции.
Аватара пользователя
noch
постоялец
Сообщения: 145
Зарегистрирован: 07.06.2005 09:45:49
Откуда: Armenia
Контактная информация:

Сообщение noch »

Есть попытки сделать переводчики с C на pascal и очень даже удачные :)

Одна из них <a href='http://c2pas.sf.net' target='_blank'>http://c2pas.sf.net</a>

Другой: <a href='http://www.astonshell.com/freeware/c2pas32/' target='_blank'>http://www.astonshell.com/freeware/c2pas32/</a>

И самый пожалуй старый это <a href='http://www.knosof.co.uk/' target='_blank'>http://www.knosof.co.uk/</a>

Просьба модератору переименовать топик
Гость

Сообщение Гость »

Добрый вечер.

Так и не понял как скачать транслятор с <a href='http://www.knosof.co.uk/..' target='_blank'>http://www.knosof.co.uk/..</a>.
он платный ?
Аватара пользователя
noch
постоялец
Сообщения: 145
Зарегистрирован: 07.06.2005 09:45:49
Откуда: Armenia
Контактная информация:

Сообщение noch »

Вот ссылка



<a href='ftp://ftp.simtel.net/pub/simtelnet/msdos/turbopas/ctop12b.zip' target='_blank'>ftp://ftp.simtel.net/pub/simtelnet/msdos/...pas/ctop12b.zip</a>

А вот ссылка на мануал

<a href='http://www.knosof.co.uk/ctop.ps' target='_blank'>http://www.knosof.co.uk/ctop.ps</a>
Сергей

Сообщение Сергей »

Можно скомпилировать модули на С, а потом линковать их к программе на паскале и импортировать нужные функции.


Я прошу прощения, а можно тут по подробнее :rolleyes:
Ну очень интересно почитать что-нибудь по этому поводу.
Заранее спасибо.
Илья Аввакумов
новенький
Сообщения: 50
Зарегистрирован: 04.05.2005 15:06:42
Откуда: Екатеринбург

Сообщение Илья Аввакумов »

Глава 10.6 справочного руководства по FPC.
Объявление будет примерно таким

Код: Выделить всё

procedure foo(dummy : pointer); cdecl; external 'dum.dll' name 'DUMYFOO';
Ответить