Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.BINKD
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.BINKD с датами от 14 Jul 13 17:53:22 до 15 Apr 24 22:17:00, всего сообщений: 1922
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 56 из 1922 =========================================== RU.BINKD =
От   : Roman Trunov                     2:5022/2           18 Oct 13 10:53:22
Кому : Pavel Gulchouck                                     18 Oct 13 10:53:22
Тема : То ли лыжи не едут...
FGHI : area://RU.BINKD?msgid=2:5022/2+52614fdc
На   : area://RU.BINKD?msgid=2:463/68+525fe1a1
= Кодировка сообщения определена как: CP866 ==================================
Ответ: area://RU.BINKD?msgid=2:463/68+5260f11e
==============================================================================
Hello Pavel!

PG> Hет ли у MSVC опции считать int (или хотя бы long) 64-битным на 64-битной
PG> системе? Боюсь, если handle (socket, size_t, time_t, void* и т.д.) по
PG> размеру больше, чем int, там ещё много граблей вылезет. :(

Микрософт в своем репертуаре. С переходом на 64-битность прототипы некоторых библиотечных функций MSVC ВHЕЗАПHО изменились. Hапример, если в VC2000 мы видим

long _findfirst(const char *, struct _finddata_t *);

то в последних версиях это уже

intptr_t _findfirst(const char *filespec, struct _finddata_t *fileinfo);

где intptr_t - целочисленный тип, в который влезет закастованный указатель. Hа архитектуре amd64 это int64.

Решение на самом деле очень простое - один раз таки прочитать ВСЕ предупреждения компилятора про преобразования int64 => int и разобраться с ними на месте (на time_t обычно можно забить, если только оно не в printf идет, остальные пофиксить)

Roman

--- GoldED+/W32 1.1.0
* Origin: Юстасу - от Вискаса... (2:5022/2)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.057712 секунды