Форум: "Прочее";
Текущий архив: 2007.11.04;
Скачать: [xml.tar.bz2];
ВнизПомогите с конвертацие проги с С++ Найти похожие ветки
← →
andreil © (2007-09-29 19:34) [0]У меня пара вопросов:
какие типы данных из С, каким типам из Дельфи соответствуют;
что означает функия "_rotl(checksum, 4) ^ *((char *)buffer)++"
чего это такое: ^dest_p+ = rep ?
← →
KSergey © (2007-10-01 12:05) [1]> какие типы данных из С, каким типам из Дельфи соответствуют;
Это надо читать хелпы к обоим продуктам и сравнивать. Лично мне лень все соотвествия расписывать, да и не знаю я все.
> что означает функия "_rotl(checksum, 4) ^ *((char *)buffer)++"
А что именно не понятно в этом выражении? Или о какой именно функции речь?
^ - bitwise-exclusive-OR
> чего это такое: ^dest_p+ = rep ?
Чета я не понимаю такого, признаться. не могу найти, чтобы ^ был унарным в С/С++.
← →
Rouse_ © (2007-10-01 12:09) [2]Примеров рассчета CRC32 на дельфи в инете море - зачем в сишных исходниках возиться?
← →
clickmaker © (2007-10-01 12:13) [3]
> ^dest_p+ = rep ?
Inc(not dest_p, rep)
← →
DVM © (2007-10-01 12:24) [4]_rotl циклический сдвиг влево судя по названию, точно такого же аналога в Delphi вроде нет.
← →
Rouse_ © (2007-10-01 13:12) [5]
> точно такого же аналога в Delphi вроде нет.
Дык его писать то...function _rotl(Value: DWORD; Shift: Integer): DWORD;
asm
MOV ECX, EDX
ROL EAX, CL
end;
← →
tesseract © (2007-10-01 14:13) [6]
> _rotl циклический сдвиг влево судя по названию, точно такого
> же аналога в Delphi вроде нет.
Dest:=Dest shl shift ?
Или я не тот сдвиг в виду имею?
← →
Rouse_ © (2007-10-01 14:16) [7]
> Или я не тот сдвиг в виду имею?
не тот :)
Смотри разницу между
SAL/SAR/SHL/SHR и RCL/RCR/ROL/ROR в
IA-32 Intel Architecture Software Developer’s Manual части второй :)
← →
andreil © (2007-10-05 15:46) [8]Вот все, что мне надо на данный момент:
Типы данных:
int integer
float фиг_его_знает
char string
unsigned фиг_его_знает
short фиг_его_знает
unsigned short фиг_его_знает
char name[56]; name: array[0..56] of char;
#define myoffsetof(type,identifier) ((size_t)&((type *)0)->identifier)
????????????
Заголовки функций и процедур:
int FastChecksum(void *buffer, int bytes);
function FastChecksum(var buffer: Pointer; bytes: integer): integer;
ArrayUsage( char *szItem, int items, int maxitems, int itemsize )
procedure(szItem: string; items, maxitems, itemsize: integer): integer;
#if 0
{$IF false}
Аналоги функций:
char * _RTLENTRY _EXPFUNC getenv(const char * __name);
char _FAR * _RTLENTRYF _EXPFUNC strcpy(char _FAR *__dest, const char _FAR *__src);
char _FAR * _RTLENTRYF _EXPFUNC strcat(char _FAR *__dest, const char _FAR *__src);
← →
clickmaker © (2007-10-05 16:42) [9]float double
char char
unsigned Longword
short ShortInt
unsigned short Word
int FastChecksum(void *buffer, int bytes);
function FastChecksum(buffer: Pointer; bytes: integer): integer;
ArrayUsage( char *szItem, int items, int maxitems, int itemsize )
procedure(szItem: PChar; items, maxitems, itemsize: integer): integer;
← →
clickmaker © (2007-10-05 16:46) [10]strcpy - StrCopy или lstrcpy (WinAPI)
getenv - GetEnvironmentVariable (winAPI)
strcat - StrCat (учитывая, что Паскаль не чует регистр, можно и не переводить)
← →
Andru © (2007-10-05 16:46) [11]short - smallint;
char - char, byte или shortint (зависит от опций компиляции)
unsigned - cardinal;
← →
clickmaker © (2007-10-05 16:56) [12]
> #define myoffsetof(type,identifier) ((size_t)&((type *)0)->identifier)
Разве что
PSomeRecord = ^TSomeRecord;
Offset := Integer(@(PSomeRecord(0)).SomeField);
← →
andreil © (2007-10-05 22:38) [13]Спасибо за помощи, щас вставим в код и проверим.
Кстати, нащел еще одну функцию:
void _FAR * _RTLENTRY _EXPFUNC memcpy(void _FAR *__dest, const void _FAR *__src, _SIZE_T __n);
← →
57810415 (2007-10-07 22:12) [14]— Зеленом. Я взяла мелодию из «Равнодушной Богини».
← →
61D2AE2F (2007-10-07 22:24) [15]— А вам не кажется, — слова Фай Родис сопровождались ее обычной скользящей
улыбкой, — что «Вспаханный Рай» не подходит для стихов ЭРМ? Дейра Мир, недавно
создавшая кантату, сторонница сумрачного красно-оранжевого спектра мелодий. А мне
представляется, что поэты ЭРМ — хорошие люди, потому что создавали в тех условиях
добрые, хорошие вещи голубого спектра. Вы знаете, что из тех времен я больше всего ценю
русскую поэзию! Она мне кажется наиболее глубокой, мужественной и человечной среди
поэтического наследия всего тогдашнего мира. Хорошие люди всегда носили в себе печаль
неустроенной, инфернальной жизни, и мелодии их песен не должны были быть мажорнее
зеленого спектра.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2007.11.04;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.038 c