Visual c++ 将unsigned short类型转换为wchar\u t是否安全,反之亦然?
你好 我正在将项目从VisualStudio6.0迁移到VisualStudio2005 我面临的问题是。。。在VS6.0中,Visual c++ 将unsigned short类型转换为wchar\u t是否安全,反之亦然?,visual-c++,visual-studio-2005,visual-studio-6,Visual C++,Visual Studio 2005,Visual Studio 6,你好 我正在将项目从VisualStudio6.0迁移到VisualStudio2005 我面临的问题是。。。在VS6.0中,wchar\u t是简单的unsigned short类型转换,但在VS2005中,wchar\u t是内置的数据类型 在这个项目中,以前的程序员使用wchar\u t和unsigned short。 但在Vs 2005中,它显示了一些错误,比如不能从wchar\u t转换为无符号短码,反之亦然 因此,我的问题是,我们是否可以安全地将wchar\u t转换为无符号shor
wchar\u t
是简单的unsigned short
类型转换,但在VS2005中,wchar\u t
是内置的数据类型
在这个项目中,以前的程序员使用wchar\u t和unsigned short。
但在Vs 2005中,它显示了一些错误,比如不能从wchar\u t
转换为无符号短码,反之亦然
因此,我的问题是,我们是否可以安全地将wchar\u t
转换为无符号short
,反之亦然,或者我们需要使用mbstowcs和wcstombs之类的函数?您可以使用/Zc:wchar\u t-(或项目设置对话框中的等效项)关闭VS 2005中的wchar\u t-as-native-type功能:
你可能会没事,但如果是我,我会搜索并替换Unicode字符,然后将对Unicode字符的引用更改为wchar\t
。对于初学者来说,您可能只是让代码在将来对库进行更改时工作。这也会使你的代码更容易阅读
除非我遗漏了什么,mbstowcs
和wcstombs
与此无关。它们用于在Unicode和多个字符之间进行转换。听起来你所有的东西都是Unicode。更改选项将wchar\u t视为本机类型,改为“不适用于我:)。VC++2010 express.:感谢您的评论。。。我申请了:/Zc:wchar\u t,现在与2005年相比没有给出任何错误