我的项目中有以下代码行,我收到错误未知类型名称int32
#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
int32_t NPP_WriteReady(NPP instance, NPStream* stream);
int32_t NPP_Write(NPP instance, NPStream* stream, int32_t offset, int32_t len, void* buffer);
#else
int32 NPP_WriteReady(NPP instance, NPStream* stream); // getting error here
int32 NPP_Write(NPP instance, NPStream* stream, int32 offset, int32 len, void* buffer);// getting error here
#endif
我正在使用Max 10.8,Xcode 4.6.2 SDK,Base SDK 10.7和Apple llvm编译器。
似乎Apple已经删除了类型int32以及之后的10.6.I已经为它设置了#define但它不起作用。请帮助我。
答案 0 :(得分:0)
通过检查哪些类型可用于C的实现,找到了这个问题的答案。
int32_t
可在C99中找到。
但int32
却没有。问题是系统没有包含旧版SDK,其中包含包含此int32
类型的标头/库。
普通的int
类型总是存在于C的每个实现中,所以使用这个类型可能有助于以后的向后兼容情况吗?
答案 1 :(得分:0)
因为10.7 napi.h已经改变了很多。有人支持int32但现在他们删除了它。
http://developer.apple.com/library/mac/#releasenotes/general/macosxlionapidiffs/WebKit.html