Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Lazarus - nefunkčná funkcia odkázaná smerníkom na funkciu

V prílohe je verzia pre Delphi, ktorá funguje a verzia pre Lazarus, ktorá nefunguje, hoci je kompilovaná v móde Delphi. Úprava pre FPC je jednoduchá, stačí zrušiť komentáre v zakomentovaných častiach. Správa sa to ale rovnako. Funkcii compare sa odovzdajú 3 parametre: Text, hľadaná vzorka a dĺžka. Po vojdení do funkcie obsahuje prvý parameter to čo mal obsahovať druhý a druhý obsahuje to čo mal obsahovať tretí. Prvý sa stratí a tretí obsahuje nulu. Keďže druhý parameter je PChar a obsahuje dĺžku 3, program to vyhodnotí ako chybnú adresu parametra 2 (keďže sa parametre posunuli) a program havaruje kvôli nedovolenému prístupu do pamäte. Vedel by mi niekto vysvetliť, čo robím zle, prípadne posúdiť, či to nie je bug, ktorý treba nahlásiť vývojárom Lazara?

Předmět Autor Datum
Nenašly se žádné odpovědi.

Zpět do poradny Odpovědět na původní otázku Nahoru