1

当我首先尝试编译我的程序时,我收到了这个错误:

错误:“uint32_t”没有命名类型

然后我包括

#include <stdint.h>

现在发现这个错误:

/include/stdint.h:52: 错误:冲突声明'typedef unsigned int uint32_t'</p>

/cuda/include/vector_types.h:452:错误:“uint32_t”之前的声明为“typedef struct uint32_t uint32_t”</p>

有什么建议可以解决这个问题吗?谢谢

4

3 回答 3

3

尝试#include <cstdint>std::uint32_t

于 2014-05-24T05:10:34.113 回答
1

Mybe这可以帮助吗?

也许#include cstdint,但这可能并不总是有效或尝试

#if defined __UINT32_MAX__ or UINT32_MAX
  #include <inttypes.h>
  #else
  typedef unsigned char uint8_t;
  typedef unsigned short uint16_t;
  typedef unsigned long uint32_t;
  typedef unsigned long long uint64_t;
  #endif
于 2014-05-24T05:04:41.170 回答
0

您可以检查 uint32_t 在 vector_types.h 中是如何定义的,也许已经存在一些 #ifndef 内容,您只需重新排序包含即可摆脱。我通过谷歌找到了这个版本,但根本没有 uint32_t 声明。

于 2014-05-24T05:13:14.593 回答