ios – va_list在64位模拟器上崩溃

ios – va_list在64位模拟器上崩溃,第1张

概述使用64位iOS模拟器时,下面的init函数崩溃,出现EXC_BAD_ACCESS(code = 1)错误.谁会知道为什么?以及如何正确地解决它. 有关信息:’format’不是零,它可以在32位模拟器和任何32/64位iPhone / iPad设备上正常工作. void Log (NSString * format, ...){ va_list argList; va_start( 使用64位iOS模拟器时,下面的init函数崩溃,出现EXC_BAD_ACCESS(code = 1)错误.谁会知道为什么?以及如何正确地解决它.

有关信息:’format’不是零,它可以在32位模拟器和任何32/64位iPhone / iPad设备上正常工作.

voID Log (Nsstring * format,...){   va_List argList;   va_start(argList,format);   NSLogv(format,argList);   Nsstring* string = [[Nsstring alloc] initWithFormat: format arguments: argList];   va_end(argList);...}

在AppDelegate中称为第一件事

- (BOol)application:(UIApplication *)application dIDFinishLaunchingWithOptions:(NSDictionary *)launchOptions{   Log(@"app options %@",launchOptions);   ...}
@H_301_11@解决方法 不知怎的,A-live评论给了我一个想法,我发现了如何避免崩溃.

我在同一个va_start / va_end块中使用了两次argList

[[Nsstring alloc] initWithFormat: format arguments: argList];

NSLogv(format,argList);

似乎iOS 64位模拟器不喜欢它.不知道为什么它只能在任何其他平板电脑(以及真实设备)中找到它.所以我通过制作这样的两个不同的bock来修复它

va_List argList;va_start(argList,format);Nsstring* string = [[Nsstring alloc] initWithFormat: format arguments: argList];va_end(argList);va_start(argList,format);NSLogv(format,argList);va_end(argList);

希望它会帮助某人.如果有人知道为什么,我仍然很想知道它.

总结

以上是内存溢出为你收集整理的ios – va_list在64位模拟器上崩溃全部内容,希望文章能够帮你解决ios – va_list在64位模拟器上崩溃所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1105286.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存