一次ndk开发中,定义的返回值为int的函数忘了写return0,导致执行该函数结束后就崩溃了,检查了好久好久!!!
分析原因:通过查看汇编代码得知少写return 0;,有几个寄存器没有恢复,进而导致程序运行栈被破坏,进而影响了原来调用该函数的代码无法继续运行。
猜测:不写return 编译器不知道在何时返回、何时恢复之前各个寄存器的值
一次ndk开发中,定义的返回值为int的函数忘了写return0,导致执行该函数结束后就崩溃了,检查了好久好久!!!
分析原因:通过查看汇编代码得知少写return 0;,有几个寄存器没有恢复,进而导致程序运行栈被破坏,进而影响了原来调用该函数的代码无法继续运行。
猜测:不写return 编译器不知道在何时返回、何时恢复之前各个寄存器的值