Вопрос

Каковы различные различия между двумя символами TCHAR а также _TCHAR Тип определен в заголовке Windows Tchar.h? Объясните с примерами. Кратко опишите сценарии, где вы будете использовать TCHAL в отличие от _tchar в вашем коде. (10 знаков)

Это было полезно?

Решение

Нашел свой ответ здесь:

Форумы MSDN >> Visual Studio Developer Center >> TCHAR VS _THAR

Thar и _tchar идентичны, хотя, поскольку Thar не имеет ведущего подчеркивания, Microsoft не разрешается зарезервировать его как ключевое слово (представьте, если у вас была переменная под названием Tchar. Подумай, что произойдет). Следовательно, tchar не будет # определенным, когда языковые расширения отключены (/ za).

TCHAR определен в Winnt.h (который вы получите, когда вы #include), а также tchar.h under / ze. _Tchar доступен только в tchar.h (который также #defines _tschar и _tuchar). Это неподписанные / подписанные варианты нормального типа данных TCHAL.

Другие советы

В дополнение к тому, что сказал @russc, TCHAR используется API Win32 и основан на UNICODE Определить, тогда как _TCHAR используется по времени выполнения C и основана на _UNICODE Определите вместо этого. UNICODE а также _UNICODE обычно определяются / опущены вместе, делая TCHAR а также _TCHAR взаимозаменяемый, но это не требование. Они семантически разделены для использования различными каркасами.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top