• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - CGFloat 有奇怪的默认值

[复制链接]
菜鸟教程小白 发表于 2022-12-13 03:14:37 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我刚刚遇到了一个非常奇怪的错误,这可能是由于我对 Objective C 数据类型缺乏了解所致。 如果我这样做:

CGFloat newY;
NSLog(@"newY is %f", newY);

日志返回 0.0,虽然我期望为零,但这不是真正的问题。如果我现在将此应用程序导出到 iOS .ipa 并从那里安装应用程序,newY 会自动初始化为 185.000。 当应用程序是从 .ipa 安装而不是直接从 XCode 安装时,此值从何而来以及为什么不同?

我真的很感激任何关于正在发生的事情的见解,这对我来说没有任何意义。



Best Answer-推荐答案


newY 未初始化为零,它是当时堆栈(存储 newY 的地方)上的任何内容。这在不同平台上可能不同,但也可能在执行之间发生变化。

您很可能会收到一条警告,告诉您在自己初始化之前使用 newY 是不安全的。

关于ios - CGFloat 有奇怪的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17920660/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap