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

Delphi Sources



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

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 09.12.2015, 18:59
Redstason Redstason вне форума
Новичок
 
Регистрация: 24.02.2007
Сообщения: 57
Репутация: 10
По умолчанию Переписать с Delphi на С++

Здрасте.
Собственно:
Было на Delphi:
Код:
function Matching(StrInputA: WideString;
                  StrInputB: WideString;
                  lngLen: Integer) : TRetCount;
Var
    TempRet   : TRetCount;
    PosStrB   : Integer;
    PosStrA   : Integer;
    StrA      : WideString;
    StrB      : WideString;
    StrTempA  : WideString;
    StrTempB  : WideString;
begin
    StrA := String(StrInputA);
    StrB := String(StrInputB);

    For PosStrA:= 1 To Length(strA) - lngLen + 1 do
    begin
       StrTempA:= System.Copy(strA, PosStrA, lngLen);

       PosStrB:= 1;
       For PosStrB:= 1 To Length(strB) - lngLen + 1 do
       begin
          StrTempB:= System.Copy(strB, PosStrB, lngLen);
          If SysUtils.AnsiCompareText(StrTempA,StrTempB) = 0 Then
          begin
             Inc(TempRet.lngCountLike);
             break;
          end;
       end;
       Inc(TempRet.lngSubRows);
    end; // PosStrA

    Result:= TempRet;
end;

Я переписал на С++.

PHP код:
TRetCount   Matching(WideString StrInputA,WideString StrInputB,int lngLen){
 
TRetCount   TempRet;
 
int  PosStrB,PosStrA ;
 
WideString   StrA,StrB,StrTempA,StrTempB;
 
StrA =StrInputA;
 
StrB StrInputB;
 for(
PosStrA=1;  PosStrA<=(StrA.Length() - lngLen 1);PosStrA++){
   
StrTempA=StrA.SubString(PosStrAlngLen);

   
PosStrB1;
   for(
PosStrB=1PosStrB<=(StrB.Length() - lngLen 1);PosStrB++){
     
StrTempB=StrB.SubString(PosStrBlngLen);
     if (
AnsiCompareText(StrTempA,StrTempB) == 0) {
       
TempRet.lngCountLike=TempRet.lngCountLike+1;
       break;
     }
   }

   
TempRet.lngSubRows=TempRet.lngSubRows+1;
 } 
// PosStrA


    
return TempRet;



Но что-то пошло не так.Может кто увидит , что.

Последний раз редактировалось Redstason, 10.12.2015 в 18:15.
Ответить с цитированием
 


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

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

ВКонтакте   Facebook   Twitter