谁来帮我看下这个宏定义 C语言宽窄字符转换问题
//谁帮我看看这程序,删掉#define UNICODE 转到 窄字符就各种错误,请问是我哪里写错了吗?如果是要怎么改才能值通过#define UNICODE 来控制宽窄字符程序代码:
#define UNICODE #ifdef UNICODE #define _tchar wchar_t #define _int int #define _tmain wmain #define _tprintf wprintf #define _tputs fputws #define _tsystem _wsystem #define _T(x) L##x #else #define _tchar char #define _int int #define _tmain main #define _tprintf printf #define _tputs puts #define _tsystem system #define _T(x) x #endif // UNICODE void fnFun(_tchar **pStr) { wprintf(L"%s\n", *pStr); } int main() { setlocale(LC_ALL, "chs"); _tchar *str[100] = { L"擦擦擦",L"哈哈哈" }; fnFun(str); _tsystem(L"pause"); return 0; }