Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/129.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将itoa与TCHAR一起使用 我有一个支持Unicode的Win32 C++应用程序。我在使用itoa()函数时遇到了一个问题,但我得到了一个编译错误,因为我传递了一个TCHAR*作为参数,而不是char*_C++_Winapi_Encoding - Fatal编程技术网

将itoa与TCHAR一起使用 我有一个支持Unicode的Win32 C++应用程序。我在使用itoa()函数时遇到了一个问题,但我得到了一个编译错误,因为我传递了一个TCHAR*作为参数,而不是char*

将itoa与TCHAR一起使用 我有一个支持Unicode的Win32 C++应用程序。我在使用itoa()函数时遇到了一个问题,但我得到了一个编译错误,因为我传递了一个TCHAR*作为参数,而不是char*,c++,winapi,encoding,C++,Winapi,Encoding,我能做些什么使它工作 TCHAR buf[32]; itoa( taskState, buf, 10 ); 我们没有充分的理由使用TCHAR,除非您的目标是在DLL中使用MFC的Windows 9x,并且您有点害怕重建MFC。只需使用wchar\u t 然后阅读微软的itoa文档 在这里,您可以找到至少一个可以与wchar\t字符串一起使用的变体 使用itoafamily通常不是一个好主意,但是您还没有学会查找文档 所以,这就是你应该做的:检查文档(是的,我已经检查过了,它就在那里) 附录,

我能做些什么使它工作

TCHAR buf[32];
itoa( taskState, buf, 10 );

我们没有充分的理由使用
TCHAR
,除非您的目标是在DLL中使用MFC的Windows 9x,并且您有点害怕重建MFC。只需使用
wchar\u t

然后阅读微软的
itoa
文档

在这里,您可以找到至少一个可以与
wchar\t
字符串一起使用的变体

使用
itoa
family通常不是一个好主意,但是您还没有学会查找文档

所以,这就是你应该做的:检查文档(是的,我已经检查过了,它就在那里)



附录,截至2015年4月:自2011年年中以来,我们已经批准了C++11和C++14标准,编译器现在通常从
标题支持C++11函数;它与itoa一样方便,而且更安全。

对于TCHAR字符串,您应该使用_ttoi()。

正如Adam Pierce提到的,TCHAR版本的_itoa()是_itot(),您可以在这里找到它:

我认为这是一个根本性的错误,所以当它抗议由四个字母组成的答案RTFM太短时。我可以说“答案太短”有时很烦人,因为答案不能再大了。如果每个人都能理解RTFM,就不需要像StackOverflow这样的网站。通常FM写得不好或过于臃肿,以至于你看不到隐藏在techno speak页面中的内容。谢谢你把我们从坏FM中救出来。