|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 15 May 2004 22:30:28 To : Stanislav Yadykin Subject : Re: транслирование кода из С++ в перл -------------------------------------------------------------------------------- Stanislav Yadykin -> All @ Fri, 14 May 2004 17:15:20 +0400: SY> Возникла надобность портировать код, написанный на С++ в перл. SY> Hо появилась проблема с одним участком кода: >> hashbuf->iWBuf[14] = (dword)(tmpLength / 0x100000000); SY> Перл ругается на это строку >> Integer overflow in hexadecimal number at XXXXXX.pm line 150. >> Hexadecimal number > 0xffffffff non-portable at XXXXXX.pm line 150. SY> И в то же время >> PayCash.pm syntax OK SY> Что хотели сказать этой строкой? Поскольку это число больше допустимого SY> диапазона для 32-х битных процессоров, оно по идее не должно работать SY> на РС-компатибле. Hо компилится и работает! Компилится - верю. Hасчет работает - сомневаюсь. В принципе всякие off_t в современных сях обычно уже 64-битные инты. В смысле long long. И я думаю, что этой строкой хотели сохранить в оном буфере именно старшие 4 байта. SY> Как обойти? Зависит от того, как ты получил в перле 64-битный tmpLength. -- Artem Chuprina RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/122.256, ICQ: 13038757 --- ifmail v.2.15dev5.3 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/1147710f85e3b.html, оценка из 5, голосов 10
|