首页
社区
课程
招聘
[求助]jni中指针变量的疑惑
发表于: 2015-4-16 14:57 7615

[求助]jni中指针变量的疑惑

2015-4-16 14:57
7615
大家好,我是初次接触jni的菜鸟。
我在调试一个jni的函数的时候例如如下函数:
Java_HelloWorld_displayHelloWorld(JNIEnv *env, jobject obj, jbyteArray ba, jint size)

env和obj貌似都是在调试的时候找到他在内存中的地址和它所对应值。jint就是一个普通的数值放在寄存器里的。jbyteArray就有点怪了,我在调试的时候显示0x1d300005。这个值在内存中找不到,即使真的有这个地址,跳过去的话也是很怪的值,与原先的值不同。我查了下定义:
typedef _jbyteArray *jbyteArray;
也就是说这个变量是个指针类型的,那么就有个疑虑了,那些带有j开头的指针类型的变量值是放在哪呢?有哪位大大能帮助我一下呢?

[招生]科锐逆向工程师培训(2025年3月11日实地,远程教学同时开班, 第52期)!

收藏
免费
支持
分享
最新回复 (4)
雪    币: 246
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
翻一下jni。c(cpp)
就行了。
应该是java对象的底层表示。。
2015-4-16 21:58
0
雪    币: 82
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
呵呵。我已经下载了JDK源码。看了部分,大概知道了实现原理。个人感觉逆向调试的时候去看那些j开头变量的底层值过于复杂也没必要。
2015-4-17 10:21
0
雪    币: 2105
活跃值: (569)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
类似一个handle 用来索引真实的object
2015-4-17 10:45
0
雪    币: 82
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
嗯。。我也是那么认为的。就是个句柄而已。
2015-4-17 11:03
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册