关于EXC_ARITHMETIC (code=EXC_I386_DIV, subcode=0x0))错误

游戏中忽然崩溃,于是在ios虚拟机上跑,运行时跑出了这个错误:

EXC_ARITHMETIC (code=EXC_I386_DIV, subcode=0x0))

断点的代码为:

startTick(m_iActionFps, m_iTotalTime / m_iTotalFrames);


仔细研究上下文并没有空指针,而且iphone上跑一直没问题。。。

后来google了很久,才找到这个非常容易忽略的问题。。。。


错误在于:

m_iTotalTime / m_iTotalFrames中,m_iTotalFrames这个分母为0了。。。

网上说这个错误是除0错误,而且神奇的是ios7没问题,androidios虚拟机却运行时崩溃了

解决

EaseMessageViewController.mviewDidLoad方法结尾处加上 EaseEmotionManager * manager = [[EaseEmotionManager alloc] initWithType:EMEmotionDefault emotionRow:3 emotionCol:7 emotions:[EaseEmoji allEmoji]]; [self.faceView setEmotionManagers:@[manager]];


你可能感兴趣的:(异常)