0

我的项目中有以下代码行,但出现错误 Unknown type name 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 已在 10.6 及以后的版本中删除了 int32 类型。我已经为其添加了#define,但它不起作用。请帮助我。

4

2 回答 2

0

自 10.7 napi.h 以来发生了很大变化。早期的 int32 已被支持,但现在他们将其删除。

http://developer.apple.com/library/mac/#releasenotes/general/macosxlionapidiffs/WebKit.html

于 2013-06-25T13:13:08.813 回答
0

这个问题的答案是通过检查 C 的哪个实现中可用的类型来找到的。

int32_t在 C99 中可用。然而int32事实并非如此。问题是系统不包含包含此int32类型的标头/库的旧 SDK。

普通int类型总是存在于 C 的每个实现中,所以也许使用这个类型将有助于以后的向后兼容性?

于 2013-06-19T11:57:13.550 回答