【问题标题】:C2664 conversion errorC2664 转换错误
【发布时间】:2013-05-10 06:34:23
【问题描述】:

我是编程语言的初学者,需要您的帮助。 我有来自 C 语言的代码,需要将其写入 C++ MFC。

在 C 语言中,我有类似 int32 float64 的代码,当我将它们放入 MFC 应用程序时,它们会显示此错误。

error C2664: cannot convert parameter 5 from 'float [1000]' to 'float64 []' 
error C2664: cannot convert parameter 7 from 'int *' to 'int32 *'

如何从 int32/float64 转换为仅 int/float 类型代码? 任何善意的帮助都可以。 谢谢你

PS。请问int32*后面的*是什么意思??

【问题讨论】:

  • int32 后面的 * 表示它是指向 int32 而不是 int32 本身的指针。

标签: c++ mfc int c2664


【解决方案1】:

据我所知,int32 表示它是一个 32 位整数,即 4 个字节。

如果我是你,我会使用 sizeof 内置函数来检查你机器上 int 的大小,然后从那里继续。

http://en.wikipedia.org/wiki/64-bit#64-bit_data_models

如果您的机器上的大小相等,那么您可以使用 static_cast 将 int32 转换为 int 变量类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-25
    • 1970-01-01
    • 1970-01-01
    • 2014-06-29
    • 1970-01-01
    • 2020-11-03
    相关资源
    最近更新 更多