0

現在、JNAを使用してCAPIにアクセスしようとしています。しかし、参照によって渡される符号なし整数パラメーターに問題があります。

問題のC関数は次のとおりです。

int EE_DataGetNumberOfSample(DataHandle hData, unsigned int* nSampleOut);

Javaでは次のようになります。

public int EE_DataGetNumberOfSample(Pointer hData, ByReference nSampleOut);

そして、これが私がそれをどのように使用しているかです:

IntByReference nSamplesTaken = new IntByReference();

edk.EE_DataGetNumberOfSample(hData.getValue(), nSamplesTaken);

int nativeNSamplesTaken = nSamplesTaken.getValue();

System.out.println(Integer.toBinaryString(nativeNSamplesTaken)+"("+nativeNSamplesTaken+")");

これは私に与えます:

11000100110110010011000000(51602624)

とはいえ、0である必要があります。

JNA-APIの使用方法に問題がありますか?

ありがとうございました!

4

1 に答える 1

1

私自身の質問に答えるには:

私がここに投稿したコード スニペットには何の問題もありませんが、質問とは関係のない別の完全に無関係なエラーがありました。

[閉まっている]

于 2010-05-11T12:32:17.723 に答える