将 int 转换为 CGFloat

Posted

技术标签:

【中文标题】将 int 转换为 CGFloat【英文标题】:Convert int to CGFloat 【发布时间】:2010-11-06 12:53:59 【问题描述】:

关于如何在 Objective-C 中将 int 转换为 CGFloat 有任何想法吗?

【问题讨论】:

【参考方案1】:

过去使用 () 语法转换 CGFloat 值对我来说效果很好。 CGFloat 只是定义为“typedef float CGFloat;”因此,您可以像使用浮点数一样进行投射:

CGFloat f = (CGFloat)intVal;

或者,如果你的值是一个常数:

CGFloat f = 1.10;

【讨论】:

遗憾的是,这不再适用于 64 位,其中 CGFloat 是“双”:***.com/questions/1264924/… 如果你去掉 f 后缀,那么它应该可以工作,在 32 位平台上会有一个从 double 到 float 的隐式向下转换,而在 64 位平台上根本没有转换。 【参考方案2】:

我正在寻找如何在 swift 中做同样的事情 我在第一个结果(排名靠前)中找到了问题,所以如果找到了答案,我会发布答案,以防有人像我一样幸运:)

let myCGFloat = CGFloat(myFloat)

【讨论】:

表达式需要 37 毫秒进行类型检查(限制:33 毫秒) Swift 编译器需要 30+msec 来编译这个

以上是关于将 int 转换为 CGFloat的主要内容,如果未能解决你的问题,请参考以下文章

C#中怎么将string转换成int型

C#中怎么将string转换成int型

c#中怎么将string转换成int型

如何将int转换成double

javascript 怎么将float强制转换为int类型

使用按位运算将 Int 转换为 Float 或将 Float 转换为 Int(软件浮点)