遇到一个问题,请大家帮忙分析一下DLL中函数list有两个参数a、b,a表示C++中结构体Ordinate数组的指针,b表示a的维数类型是int*,调用函数list成功后给a、b赋值我的调用代码是这样的:Ordinate.ByReference[] a = new Ordinate.ByReference[MAX];
IntByreference b = new IntByreference();
list(a,b);
StringBuffer sb = new StringBuffer("");
for(int i= 0;i<b.getvalue();i++)
{
    sb.append(a[i].属性1)
    sb.append(a[i].属性2);
    System.out.println(sb);
    sb.delete(0,sb.length());
}
现在的问题是,b.getvalue()可以得到正确的值,
但是报错:java.lang.NullPointerException;
好像是红色代码部分的问题。请问这个问题出在哪里啊?跟内存锁定有关系吗?PIN问题?(这几个名词我也不知道什么意思)
请大家帮忙解决一下吧!谢谢