CGFloat:round、floor、abs 和 32/64 位精度

2023-11-23

TLDR:如何以编译 32 位和 64 位 CGFloats 且不发出警告的方式调用标准浮点代码?


CGFloat 定义为 double 或 float,具体取决于编译器设置和平台。我正在尝试编写在这两种情况下都能正常工作的代码,而不会生成大量警告。

当我使用诸如下限、绝对值、上限和其他简单浮点运算之类的函数时,我会收到有关值被截断的警告。例如:

警告:隐式转换将 64 位值缩短为 32 位值

我不担心计算的正确性或精度损失,因为我意识到我可以一直使用所有函数的双精度版本(floor 而不是 Floorf 等);然而,我不得不容忍这些错误。

有没有一种方法可以干净地编写支持 32 位和 64 位浮点的代码,而不必使用大量 #ifdef __ LP64 __ ,或为所有标准浮点函数编写包装函数?


您可以使用这些功能tgmath.h.

#include <tgmath.h>

...

double d = 1.5;
double e = floor(d);   // will choose the 64-bit version of 'floor'

float f = 1.5f;
float g = floor(f);    // will choose the 32-bit version of 'floorf'.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CGFloat:round、floor、abs 和 32/64 位精度 的相关文章

  • 检查系统时间是自动还是用户设置

    我需要在当前的项目中设置用户证明时间 我围绕这个问题发现了很多不同的问题 但似乎没有一个问题有我正在寻找的答案 这些是我到目前为止看过的问题 XCODE 如何从设备获取 验证准确的时间戳 https stackoverflow com qu
  • 如何从 iOS 应用程序检测不安全的 wifi 网络

    我想检测我的应用程序中是否存在不安全的 wifi 网络 是否有任何公共 iOS API 可以实现相同的目的 没有记录的 API 可以获取该信息 如果您的应用程序需要通过网络发送和接收敏感数据 您通常应该假设没有安全连接
  • NSDateFormatter:根据 currentLocale 的日期,不包含年份

    这不会太难吧 我想显示不带年份的日期 例如 8 月 2 日 美国 或 02 08 德国 它也必须适用于许多其他语言环境 到目前为止 我唯一的想法是对年份进行正常格式 然后从生成的字符串中删除年份部分 我认为你需要看一下 NSString d
  • 断点条件错误

    我已经根据条件设置了断点 event name isEqualToString Some Name 这很好用 但是 当我尝试添加另一个带有条件的断点时 part name isEqualToString Some Value With A
  • let/var 如何解决可变性? [复制]

    这个问题在这里已经有答案了 我没有任何问题 我只是想对有关可变性的问题进行一些澄清 在 Objective C 中我们会使用例如NSMutableArray得到一个可变数组和NSArray得到一个不可变的 我对两者的内部运作了解不多 但据我
  • 如果加载 dylib,垃圾收集工作队列会崩溃

    我们正在将应用程序从 10 6 移植到 10 8 我正在查看我们在应用程序中加载的 dylib 我面临着非常不寻常的崩溃垃圾收集工作队列并附有以下消息 malloc Thread suspend unable to suspend a th
  • 使用自动布局、IB 和字体大小时表头视图高度错误

    我正在尝试为我的 uiTableView 创建一个标题视图 不是节标题 我已经有了 我已经在界面生成器中设置了一个 XIB 所有的连接都已连接好并且运行良好 除了桌子没有给它足够的空间 我的问题是表格顶部与表格标题有一点重叠 我的 XIB
  • 动画 UICollectionView 单元格大小更改并重新定位周围单元格

    Goal 以动画方式改变单元格的高度并重新定位周围的单元格 设想 集合视图中的某些单元格会加载远程图像 最初 这些单元格的大小是静态的 并显示活动指示器 加载图像后 会将其添加到其单元格中 并且更改单元格的高度以适合照片 Notes 我正在
  • 如何将自定义 C 代码放入 SwiftPM 包中?

    我正在尝试将 C 代码打包到 Swift 模块中 我们称之为CModule 一旦我将其放入项目的基本文件夹中 Swift模块 并配置了搜索路径 我可以在 Swift 文件中自动完成工作 并检测错误 警告 问题是 导入时它无法识别该模块 并且
  • 如何清除代码中的 NSLog 输出?

    有没有办法清除代码中的控制台输出 thanks 我喜欢的快捷方式 Simply USE K Keyboard Shortcut when you want to clear the NSLOG Data
  • 重叠的装载机圆

    我试图重现苹果为应用程序 活动 制作的重叠圆圈 见下图 如果您使用标准贝塞尔路径 起始 结束位置将仅在 0 到 2PI 之间产生影响 例如 如果您尝试填充 4PI 即使使用一些阴影 则无法模拟重叠加载 如何制作类似于苹果解决方案的东西来创建
  • 如何确定 NSTimeInterval 是否发生在任意 NSDate 期间?

    我有一个 NSTimeInterval 我想知道该时间戳是否位于日期的开始和结束之间 基本上我需要能够做类似的事情 NSDate today NSDate date NSTimeInterval myInterval someInterva
  • 如何从 AFNetworking 和 AFJSONRequestOperation 获取可变字典?

    我将 JSONKit 与 AFNetworking 的 AFHTTPClient 带有 AFJSONRequestOperation 一起使用 我似乎无法弄清楚如何触发使用 JSONKit 的 mutableObjectFrom 方法 而不
  • ios7 navigationController PushViewController 动画错误

    看来我在 navigationController PushViewController 方法中发现了一个错误 为了重新创建它 我采用了示例主详细信息项目并对 didSelectRow method void tableView UITab
  • Objective-c 中的块递归

    当执行涉及 Objective C 块的递归时 我在 iOS 应用程序中收到 EXC BAD ACCESS 信号 这是简化的代码 void problematicMethod FriendInfo friendInfo onComplete
  • 自定义 UITableViewCell 选择样式?

    当我点击我的UITableViewCell 当我单击单元格时 背景部分 我的背景图像未覆盖的区域 会变成蓝色 另外 所有的UILabel单击时单元格上的 s 变为白色 这就是我想要的 然而 我不想要的是当我点击它时的蓝色背景 但如果我这样做
  • iOS 中的 CSV 逐行解析

    我正在 Objective c 中解析 CSV 文件 该文件包含如下内容 line 40 Rising searches line 41 nabi avc Breakout line 42 stonewall 700 line 43 med
  • iphone NSDate 转换问题

    在我的 facebook 图表 Api 中 我正在获取这些数据 来自杰森 updated time 2011 05 17T14 52 16 0000 我正在使用此代码将其转换为有效的日期格式 NSDateFormatter df NSDat
  • 防止 AlertView 被解雇

    任何人都可以帮助我防止在其按钮单击事件上解雇警报视图吗 我有一个 textview 作为我的alertView 的子视图 如果 textview 值为 nil 我不想关闭它 因为这是一个非常老的问题 但我得到了一个解决方案 并且如果其他开发
  • iPhone 和加密库

    我想我必须在我的 iPhone 应用程序中使用加密库 我想问你有关苹果公司实施的加密货币出口政策的影响 我需要做一些额外的事情吗 例如填写表格等 1 如果我使用 MD5 进行哈希处理 2 如果我使用对称加密 Thanks EDIT 2009

随机推荐

  • 当数据经过 URL 编码时,HTTP GET 的安全性如何?

    如果数据是 Url 编码的 是否足够安全 可以通过 HTTP GET 发送登录凭据 一点也不 URL 编码很容易逆转 您应该加密传输层 即使用 HTTPS
  • 如何通过 Flask 应用程序传输数据?

    我正在研究使用 Flask 应用程序作为嵌入式系统接口的可能性 我以前使用过 Flask 例如 我编写了一些非常基本的 Flask 站点来轮询外部系统 以响应页面加载以填充图表 但我不确定如何将数据推送到 Flask 应用程序中并连接到用户
  • 将内联格式添加到使用消息的便捷方法

    Usage Messages的内置函数嵌入了内联格式 例如 In 1 ActionMenu usage FullForm Out 1 FullForm RowBox ActionMenu RowBox StyleBox name TI Ro
  • 如何将侦听器添加到使用 CheckBoxListCell 的列表视图内的复选框

    I have a listview that uses a CheckBoxListCell to display a list with checkboxes next to the items How do I add a listen
  • 空感知函数调用运算符

    以同样的方式我们可以有 nullableClassInstance method blah 有办法吗 nullableFunctionInstance blah 换句话说 是否存在一个运算符来检查函数实例是否不存在null 如果是这样 请在
  • 地址运算符 (&) 与引用运算符 (&)

    我对这个案例有点困惑 声明一个指针 int b 10 int a b 这里 取 b 的地址 考虑另一个例子 Reference to the calling object can be returned Test Test func Som
  • 长时间处于浮动状态,为什么?

    long b 99 float c 99 0F b c Error Cannot implicitly convert type float to long c b Running Successfully Why 为什么数据类型的大小和隐
  • 在php中正确使用其他类中的类?

    很久以前就应该问别人这个问题了 在另一个类中使用其他类的最佳方法是什么 例如 假设我有一个应用程序类 class Application public function displayVar echo hello world 和一个数据库类
  • 如何匹配 pandas DataFrame 中的多个列以获得“间隔”?

    我有以下熊猫数据框 import pandas as pd df pd DataFrame filename csv print df order start end value 1 1342 1357 category1 1 1459 1
  • 删除列表列中重复的列表元素

    这是我的数据框 pd DataFrame A 1 3 3 4 5 3 3 B 0 2 3 4 5 6 7 C 1 4 4 4 1 4 4 4 3 4 4 5 3 4 4 5 4 4 2 1 1 2 3 4 7 8 9 1 我想要设置 删除每
  • iPhone 应用程序中出现“服务器证书不受信任”错误

    我在用我的 iPhone 应用程序在我的 iPhone 3G OS 3 0 1 上没有任何问题 应用程序连接到 API URL https api server密度 com 1 0 所有请求都会经过它 该应用程序的用户报告说 他们现在突然收
  • 使用 Lucene 增强新文档

    Lucene 是否提供了增强新文档的方法 例如 假设 Lucene 文档包含一个日期字段 是否有可能在用户不改变其查询的情况下 以更高的分数呈现最新的文档 我不想诉诸粗略的 按日期排序 解决方案 因为它将完全取消评分算法 您可以看到 Luc
  • 使用向负无穷大截断与向零截断的优点

    我想知道使用负无穷大截断有哪些好处 Haskell从编程语言 编译器实现的角度来看 Ruby Ruby 而不是向零截断 C PHP 似乎向负无穷大截断是正确的方法 但我还没有找到这种说法的可靠来源 也没有找到这种决定如何影响编译器的实现 我
  • 在手动引导之前使用角度服务

    我想在进行手动引导之前使用角度服务 未使用 ng app 指令 有没有一种方法可以访问角度服务而无需在空 div 上调用 angular bootstrap 以下方法有效 但我想知道是否有更直接的解决方案 var element angul
  • 在 JSP 中使用 if-else

    我使用以下代码在浏览器上打印用户名
  • 是否可以测试 IBAction?

    对 IBOutlet 进行单元测试相当容易 但是 IBActions 怎么样 我试图找到一种方法来做到这一点 但没有运气 有没有办法对视图控制器中的 IBAction 和 nib 文件中的按钮之间的连接进行单元测试 对于完整的单元测试 每个
  • 访问部署在tomcat中的SoapUI Mock Service中的文件资源

    问题简而言之 访问本地file in 脚本调度程序关于项目路径 即def file new File groovyUtils projectPath responseFileName xml 这是工作正常当测试运行时SoapUI as 模拟
  • Python 模拟远程 tail -f?

    我们有几个应用程序服务器和一个中央监控服务器 我们当前正在从监控服务器运行带有 tail f 的 ssh 以从应用程序服务器实时传输多个文本日志文件 除了整个方法的脆弱性之外 问题还在于终止 ssh 进程有时会留下僵尸尾进程 我们已经尝试使
  • 过滤SQLAlchemy查询结果对象的一对多属性

    假设我有几个对象 具有一对多的关系 例如 class Parent id other cols etc children relationship Child backref parent class Child parent id Col
  • CGFloat:round、floor、abs 和 32/64 位精度

    TLDR 如何以编译 32 位和 64 位 CGFloats 且不发出警告的方式调用标准浮点代码 CGFloat 定义为 double 或 float 具体取决于编译器设置和平台 我正在尝试编写在这两种情况下都能正常工作的代码 而不会生成大