C++ 无法将参数5从';尺寸';至';尺寸';——为什么?
我在编译32位代码时遇到此错误。对于64位Windows,同一文件编译时不会出错 1> c:\project\test.cpp(1317):错误C2664:'StringCbCopyExW':无法将参数5从'SIZE\u T*'转换为'SIZE\u T*'C++ 无法将参数5从';尺寸';至';尺寸';——为什么?,c++,windows,visual-c++,C++,Windows,Visual C++,我在编译32位代码时遇到此错误。对于64位Windows,同一文件编译时不会出错 1> c:\project\test.cpp(1317):错误C2664:'StringCbCopyExW':无法将参数5从'SIZE\u T*'转换为'SIZE\u T*' 大小和大小都有相同的大小和符号,那么区别是什么?为什么我需要一个演员?如果类型不同,为什么只有在32位Windows上才会出现错误?大小的定义是什么 它可能被定义为“unsigned int”,或用于向后兼容的uint32\t大小的定义是什么
大小和大小都有相同的大小和符号,那么区别是什么?为什么我需要一个演员?如果类型不同,为什么只有在32位Windows上才会出现错误?大小的定义是什么
它可能被定义为“unsigned int”,或用于向后兼容的uint32\t大小的定义是什么
它可能被定义为“unsigned int”,或用于向后兼容的uint32\t
SIZE\t
与std::SIZE\t
不同。第一种是Windows代码头中的< <代码> >定义< /代码>,第二类是C++编译器定义的类型。它们是不同的类型
至少在我的系统上,
SIZE\u T
是ULONG\u PTR
的typedef
,它是的定义无符号长的SIZE\u T
不同于std::SIZE\u T
。第一种是Windows代码头中的< <代码> >定义< /代码>,第二类是C++编译器定义的类型。它们是不同的类型
至少在我的系统上,SIZE\u T
是一个typedef
用于ULONG\u PTR
,它是一个定义的无符号长的你能在32位窗口上对SIZE\u T和SIZE\u T进行大小调整吗?你能在32位窗口上对SIZE\u T和SIZE\u T进行大小调整吗?在64位窗口上是typedef无符号的,*蒲隆坡代码>对于32位,它是typedef_W64无符号长ULONG_PTR,*PULONG_PTR代码>。在任何一种情况下,这些都应该是相同整数类型的别名。对于64位,它是typedef unsigned\uu int64 ULONG\u PTR,*PULONG\u PTR代码>对于32位,它是typedef_W64无符号长ULONG_PTR,*PULONG_PTR代码>。在任何一种情况下,这些都应该是相同整数类型的别名。typedef ULONG\u PTR SIZE\u T,*PSIZE\u T代码>typedef ULONG\u PTR SIZE\u T,*PSIZE\T代码>