【问题标题】:Allegro - implicit conversion loses integer precision - Warning on Xcode "fmaths.inl" interrupting some codes to work?Allegro - 隐式转换失去整数精度 - Xcode“fmaths.inl”警告中断一些代码工作?
【发布时间】:2013-07-22 10:29:25
【问题描述】:

我正在尝试在 Xcode 上使用 allegro,在遵循教程之后,我收到了这个警告“隐式转换失去整数精度”。
我相信由于此警告,我无法使游戏全屏或无法更改屏幕大小。我也无法创建图像的位图

我将如何解决这个问题?我根本没有权限,无法对其进行任何更改!

int res = lres >> 16;
               ^            implicit conversion loses integer precision

帮帮我

【问题讨论】:

  • lres的类型是什么?
  • 是错误还是警告?警告可以简单地忽略。
  • 警告,但我遇到了其他问题,例如位图图像未出现,屏幕尺寸无法更改(它始终是固定的)。我想确认此警告不会导致问题
  • 警告不太可能表示真正的问题,但在奇怪的情况下可能会出现。

标签: xcode macos allegro5


【解决方案1】:

试试

NSInteger res = lres >> 16;

【讨论】:

  • 使用未声明的标识符“NSUInteger”,使用未声明的“res”,你的意思是“lres”吗?以及上面提到的相同警告“隐式转换失去整数精度”
  • 再次尝试,它给了我同样的错误“使用未声明的标识符'NSInteger'
  • 我在示例 OSX 项目中都尝试过 NSUInteger 和 NSInteger,但它没有给我任何错误。
  • 对于 64 位机器 int 不足以容纳所有 NSInteger 的值。这就是出现此警告的原因。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-20
  • 1970-01-01
  • 2023-03-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多