【发布时间】:2014-03-30 23:02:46
【问题描述】:
每个人。我正在使用 JNI 在 Android 下编写。 我需要将“间隔”作为 uint16 传递到我的 C foo() 中,但之后我使用相同的“间隔”来返回 Java。
C:
static jint func (JNIEnv* env, jobject object,jstring first)
{
/*...action...*/
uint16 interval;
jint result = foo (ifirst, &interval);
return result < 0 ? result : interval;
}
下面有错误
错误:操作数到 ?: 有不同的类型 'jint {aka int}' 和 'uint16* {aka short unsigned int*}'
如何使用 'interval' 参数来避免错误并继续正确的程序工作?
【问题讨论】:
-
这是您实际拥有的代码吗?错误消息不匹配:它表示操作数是一个 int 和一个指向
uint16的 指针。 -
你在写,收到错误后,我删除了指针并忘记了它。对不起。
标签: c java-native-interface uint16