Мне нужно знать, поддерживает ли проект Visual C++ 6.0 Unicode или нет. Как я могу это проверить?
Проверьте, поддерживает ли проект Visual C++ 6.0 юникод или нет?
comment
Почему люди не вычитывают свои вопросы...
- person Thorsten Dittmar   schedule 08.05.2012
comment
Потому что им все равно.
- person Cody Gray   schedule 08.05.2012
comment
возможный дубликат поддерживает ли визуальный С++ 6.0 юникод?
- person Cody Gray   schedule 08.05.2012
Ответы (1)
Если проект скомпилирован с поддержкой Unicode, то будет определена директива препроцессора UNICODE
(или _UNICODE
). Тестирование, чтобы увидеть, определено ли это, даст вам ответ:
#if defined(UNICODE) || defined(_UNICODE)
// The project is compiled for Unicode
#else
// The project is NOT compiled for Unicode
#endif
Вы также можете проверить это в настройках вашего проекта.
- В меню «Проект» нажмите «Настройки».
- Выберите вкладку «С/С++».
- В разделе «Определения препроцессора» проверьте наличие
UNICODE
и_UNICODE
.
Если у вас есть проект, который в настоящее время не ориентирован на Unicode, но вы хотите проверить, может ли, то лучше всего определить эти директивы препроцессора и затем попробуйте скомпилировать свой проект. Если это удастся, то все готово. Если это не удается, пройдите и исправьте ошибки, выданные компилятором.
person
Cody Gray
schedule
08.05.2012
после проверки я вижу, что мой проект не ориентирован на unicode, он нацелен на многобайтовый набор символов. Теперь, как узнать, что мой исходный код может ориентироваться на unicode. Я вижу, что все параметры в методах имеют тип char вместо wchar_t, могу ли я сделать вывод, что он не нацелен юникод?
- person nguyen; 09.05.2012
@nguyen: если он нацелен на многобайтовый набор символов (MBCS), то он не ориентируется на Unicode. И если вы использовали тип
char
вместо типа TCHAR
, как предполагалось, то вы не сможете перекомпилировать его для Unicode, просто добавив #define UNICODE
. Вам нужно будет переписать код, либо использовать TCHAR
с определенным Unicode, либо wchar_t
.
- person Cody Gray; 09.05.2012