我目前正在用ndk实现一个android函数.
我在java中声明了这个函数
public static native voID calculate(float[] rgb,float factor);
然后,我写了C函数:
JNIEXPORT voID JNICALL Java_
但是,每当我尝试使用数组和某个值调用该函数时,我都会收到logcat消息:
A / libc(16064):致命信号11(SIGSEGV)位于0x00000010(代码= 1)
之后,应用程序崩溃了.我发现在写入浮点值时总会出现这种情况.阅读不会导致崩溃.
我有什么不对吗?是不是可以写出数组值?
最佳答案我找到了解决方案!出于某种原因,使用null值作为数组调用该函数.但是,rgb == NulL检查没有被触发(我不知道是出于哪个原因).我通过在获取值之前添加第二个检查来解决问题
JNIEXPORT voID JNICALL Java_
总结 以上是内存溢出为你收集整理的java – 写入jfloat数组时获取’致命信号11(SIGSEGV)在0x00000010(代码= 1)’全部内容,希望文章能够帮你解决java – 写入jfloat数组时获取’致命信号11(SIGSEGV)在0x00000010(代码= 1)’所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)