ndk-build编译64位.so,出现ndk error: cast from 'int*' to 'int' loses precision [-fpermissive]

这是因为Linux 64位系统上指针类型占用8个字节,而int类型占用4个字节,所以会出现loses precision。

可以先将int* 转成long类型,long类型可以隐式类型转换到int类型,如下:

int func() {
    int *p;
    p = //赋值
    return (long)p;
}

这样就不会报编译错误了。

作者:lb377463323
出处:http://blog.csdn.net/lb377463323
原文链接:http://blog.csdn.net/lb377463323/article/details/78330249
转载请注明出处!

猜你喜欢

转载自blog.csdn.net/lb377463323/article/details/78330249