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

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

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

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

相关文章:

  • 2021-10-29
  • 2021-09-04
  • 2021-12-14
  • 2022-12-23
  • 2021-07-11
  • 2022-12-23
  • 2022-12-23
  • 2021-11-30
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案