Java Pointer vs C# IntPtr
<p>Hi have to use a dll.
In Java we use this :</p>

<pre><code>Public interface CLibrary extends Library {
    CLibrary INSTANCE = (CLibrary)
    Native.loadLibrary("are32.dll",
    CLibrary.class);
    Pointer ENCRYPT(String a, int ai, String b, int bi);
}

...

Pointer ptr1 = CLibrary.INSTANCE.ENCRYPT("TEST",5,"TEST",5);
for (int i=0;i&lt;6;i++)
  System.out.println((ptr1.getByte(i)&amp; 0xFF));
</code></pre>

<p>Can you help me to find the equivalent in C# please?
I used IntPtr but I can't find a ReadByte like Java.</p>

<pre><code>    [DllImport("are32.dll",)]
    public static extern IntPtr ENCRYPT(string p1, int p2, string p3, int p4);

...

var retPtr = ENCRYPT("TEST", 5, "TEST", 5);
</code></pre>

<p>How Can I <code>ReadByte</code> from <code>retPtr</code>? <code>IntPtr</code> is it equals to <code>Pointer</code>?</p>

<p>Thanks for your help</p>
