如果在Xcode的调试控制台中输入
(lldb) p (float)fabsf(-5.0f)
(float) $22 = 0
(lldb) p (double)fabsf(-5.0f)
(double) $23 = 5
Run Code Online (Sandbox Code Playgroud)
无论参数如何,第一个结果转换为浮动(没有转换,p命令无法识别fabsf返回类型)都是错误的.
但是在库头文件中,返回类型fabs显然是一个浮点数.有人可以解释一下吗?
ios9.2:math.h
...
extern float fabsf(float);
extern double fabs(double);
extern long double fabsl(long double);
...
Run Code Online (Sandbox Code Playgroud)
是否存在一些我不了解的lldb机制或问题,或者实际上是语言实现问题(猜测不是......)?
| 归档时间: |
|
| 查看次数: |
258 次 |
| 最近记录: |