2010-11-17 67 views

Trả lời

17

Nếu bạn đọc toàn bộ tiêu đề, bạn sẽ tìm thấy:

#ifdef _UNICODE 
typedef WCHAR TCHAR; 
#else 
typedef char TCHAR; 
#endif 

hay đại khái là vậy.

Có lẽ MS đã xóa tùy chọn thu hẹp muộn.

9

TCHAR có thể là char hoặc WCHAR dựa trên nền tảng. WCHAR luôn là ký tự Unicode 16 bit, wchar_t.

0

Về mặt kỹ thuật, không có sự khác biệt vì bạn không thể nhập hai thực thể khác nhau vào một thực thể duy nhất. Chúng ta hãy xem một ví dụ ...

typedef char a; 
typedef char b; 
typedef a b, c; 

Định nghĩa này trình Nhưng nếu một thay đổi trên nét Để

typedef char a; 
typedef char * b; 
typedef a b, c; 

Lỗi 1 Lỗi này C2040: 'b': 'a' khác ở chỗ mức gián tiếp từ 'char *'

Một Một

typedef char a; 
typedef int b; 
typedef a b, c; 

Lỗi 1 lỗi C2371: 'b': định nghĩa lại; các loại cơ bản khác nhau

Vì vậy, bằng cách phân tích những điều này chỉ cùng một loại có thể xác định cùng nhau.

Các vấn đề liên quan