gpt4 book ai didi

android - 是什么导致信号 'SIGILL' ?

转载 作者:IT老高 更新时间:2023-10-28 12:00:50 25 4
gpt4 key购买 nike

我正在使用 NDK 和 GCC 将一些 C++ 代码移植到 Android。代码基本上运行。有一次,在 Eclipse 中调试时,调用

Dabbler::Android::Factory* pFactory = new Dabbler::Android::Factory;

导致此错误:

Thread [1] (Suspended: Signal 'SIGILL' received. Description: Illegal instruction.) 
1 <symbol is not available> 0x812feb44

这是什么意思?编译器是否出于某种原因生成了非法代码?我在构造函数中有一个断点(它什么都不做),它没有被命中。我已经完成了完整的重建。

我做错了什么会导致这个问题?

最佳答案

确保所有具有非 void 返回类型的函数都有 return 语句。

虽然有些编译器会自动提供默认返回值,但其他编译器会在运行时发送一个 SIGILL 或 SIGTRAP,以便在没有返回值的情况下离开函数。

关于android - 是什么导致信号 'SIGILL' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7901867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com