How do I call a C function which takes a pointer as parameter from my Java program?

Alexander Krapf

You need to store the pointer as an int or long on the Java side. You pass it to the native method as a primitive type and cast it to the appropriate pointer type once you're in C/C++.