Привет
Большой проект, 32 битное приложение, собирается в Visual Studio 2008. В debug size_t весит 4 байта, но в release — 8, я не могу найти, что его делает таковым, не подскажете?
Здравствуйте, Logot, Вы писали:
L>Большой проект, 32 битное приложение, собирается в Visual Studio 2008. В debug size_t весит 4 байта, но в release — 8, я не могу найти, что его делает таковым, не подскажете?
Скорей всего release — x64. Проверь sizeof(void*).
Здравствуйте, Logot, Вы писали:
L>Привет L>Большой проект, 32 битное приложение, собирается в Visual Studio 2008. В debug size_t весит 4 байта, но в release — 8, я не могу найти, что его делает таковым, не подскажете?
Правый клик на size_t, "Go To Definition".
Если size_t был кем-то переопределен с помощью #undef/#define, "Студия" должна
показать нужное место. Если нет — будет "Symbol 'size_t' not defined" и проблема,
скорее всего, в конфигурации, как уже написали выше.
Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP>Здравствуйте, Logot, Вы писали:
L>>Большой проект, 32 битное приложение, собирается в Visual Studio 2008. В debug size_t весит 4 байта, но в release — 8, я не могу найти, что его делает таковым, не подскажете?
EP>Скорей всего release — x64. Проверь sizeof(void*).
Здравствуйте, okman, Вы писали:
O>Здравствуйте, Logot, Вы писали:
L>>Привет L>>Большой проект, 32 битное приложение, собирается в Visual Studio 2008. В debug size_t весит 4 байта, но в release — 8, я не могу найти, что его делает таковым, не подскажете?
O>Правый клик на size_t, "Go To Definition". O>Если size_t был кем-то переопределен с помощью #undef/#define, "Студия" должна O>показать нужное место. Если нет — будет "Symbol 'size_t' not defined" и проблема, O>скорее всего, в конфигурации, как уже написали выше.
Здравствуйте, Logot, Вы писали:
L>Привет L>Большой проект, 32 битное приложение, собирается в Visual Studio 2008. В debug size_t весит 4 байта, но в release — 8, я не могу найти, что его делает таковым, не подскажете?
Здравствуйте, Logot, Вы писали:
L>>Большой проект, 32 битное приложение, собирается в Visual Studio 2008. В debug size_t весит 4 байта, но в release — 8, я не могу найти, что его делает таковым, не подскажете?
L>Нашел — /Wp64
Уверены ?
/Wp64 — это детект 64-битных проблем, устаревший флаг компилятора.
На размер size_t он влиять не должен.
У Visual C++ есть макрос _Wp64, который определен, когда установлен флаг /Wp64.
Может, где-то записана условная директива препроцессора, изменяющая size_t в
зависимости от этого макроса ?
Здравствуйте, okman, Вы писали:
O>Здравствуйте, Logot, Вы писали:
L>>>Большой проект, 32 битное приложение, собирается в Visual Studio 2008. В debug size_t весит 4 байта, но в release — 8, я не могу найти, что его делает таковым, не подскажете?
L>>Нашел — /Wp64
O>Уверены ? O>/Wp64 — это детект 64-битных проблем, устаревший флаг компилятора. O>На размер size_t он влиять не должен.
O>У Visual C++ есть макрос _Wp64, который определен, когда установлен флаг /Wp64. O>Может, где-то записана условная директива препроцессора, изменяющая size_t в O>зависимости от этого макроса ?
Да
Я увидел много ворнингов:
warning C4267: 'return' : conversion from 'size_t' to 'unsigned int', possible loss of data