Форум по Delphi программированию



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 30.11.2021, 02:40
Delphi_RTTI Delphi_RTTI вне форума
Прохожий
 
Регистрация: 30.11.2021
Адрес: Киев
Сообщения: 4
Версия Delphi: Delphi 7
Репутация: 10
Стрелка Перевод кода функции с языка С на Delphi

Всем привет!
Пожалуйста помогите с переводом :
Код:
int base45_decode(unsigned char * dst, 
                  size_t * _max_dst_len, 
                  const char * src, 
                  size_t src_len) 
{
  size_t out_len = 0, max_dst_len;
  max_dst_len = _max_dst_len  ? *_max_dst_len : src_len;

  if (dst == NULL && _max_dst_len == NULL)
	return -2;

  if (src == NULL)
	return -2;

  if (src_len == 0)
	src_len = strlen(src);

  for(int i = 0; i < src_len; i+=3) 
  {
     int x,a,b;

     if (src_len - i < 2) 
	return -1;

     if ((255 == (a = _C2I[src[i]])) || (255 == (b = _C2I[src[i+1]]))) 
	return -1;

     x = a + 45 * b;

     if (src_len - i >= 3) 
     {
        if (255 == (a = _C2I[src[i+2]])) 
	    return -1;

        x += a * 45 * 45;

        if (out_len < max_dst_len && dst)
        	dst[out_len] = x / 256;
        out_len++;
	x %= 256;
    };

    if (out_len < max_dst_len && dst)
        dst[out_len] = x;

    out_len++;
  };
  if (_max_dst_len)
	*_max_dst_len = out_len;

  return 0;
}

Последний раз редактировалось Admin, 30.11.2021 в 19:38.
Ответить с цитированием
 



Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 05:06.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter   Ссылка на Telegram