我的应用程序使用libxml2,它包含一个函数" xmlReadMemory(const char * buffer, int size, const char * URL, const char *编码, int选项)"
我确实有#34;尺寸"发送,但它是 NSUInteger 。
这个框架是用C语言编写的,所以它希望我发送一个 int ,它会在我的应用程序中引发警告,因为我现在将arm64包含为一个有效的架构:"隐式转换丢失整数精度: NSUInteger (又名' unsigned long')到 int "。有没有一种安全的方法可以解决此警告?
答案 0 :(得分:1)
只要您确信自己永远不需要传递大于最大32位整数的值(非常不可能),只需在前面添加(int)
将其转换为int即可函数调用中的参数。无符号32位值超过4 GB,超过iPhone上的内存,并且需要 HOURS 才能通过蜂窝网络下载。