'uint32_t'标识符未find错误
我将代码从Linux C移植到Visual C ++ for windows。
Visual c + +不知道#include <stdint.h>
所以我评论它。
后来,我发现了很多'uint32_t': identifier not found
错误。 如何解决?
这种types在C头<stdint.h>
定义,它目前不是C ++标准的一部分。 根据标题上的维基百科页面 ,直到VS2010之前,它并没有随Visual Studio一起提供。
同时,你也许可以通过添加typedef
来伪装自己的头文件,这些typedef
将Microsoft的自定义整数types映射到C期望的types上。例如:
typedef __int32 int32_t; typedef unsigned __int32 uint32_t; /* ... etc. ... */
希望这可以帮助!
你可以#include <cstdint>
。 这是自2011年以来的C ++标准的一部分。
提升 。 Config提供了这些工具集的types定义,它们本身不提供它们。 此特定function的文档在这里: 标准整数types
在msinttypes项目页面有一个实现 – “这个项目填补了Microsoft Visual Studio中stdint.h和inttypes.h的缺失”。
我没有这个实现的经验,但是我已经看到了其他人推荐的SO。
在Windows上,我通常使用Windowstypes。 要使用它,你必须包含<Windows.h>
。
在这种情况下,uint32_t是UINT32或者只是UINT。
所有types定义在这里: http : //msdn.microsoft.com/en-us/library/windows/desktop/aa383751%28v=vs.85%29.aspx
我有同样的错误,并修复它包括在文件中以下
#include <stdint.h>
在你的文件的开始。
我不得不在VS2010中运行项目,我不能在代码中引入任何修改。 我的解决scheme是安装vS2013和VS2010中的VC ++目录 – > IncludeDirectories到Program Files(x86)\ Microsoft Visual Studio 12.0 \ VC \ include。 那么我的项目编译没有任何问题。