accessing memory from address
Rikki Cattermole via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sat Aug 30 06:47:36 PDT 2014
On 31/08/2014 1:41 a.m., bojoe wrote:
> I am interfacing with a dll that returns a pointer to an int.
>
> In python, I can use from_address:
>
> shape=list((c_int*rank).from_address(pi[2].contents.value))
>
> Is there something equivalent in d? Or do I need to manually call
> ReadProcessMemory at that location?
In the c world integral types are a bit more complicated. So for
reference take a look at the table on [0].
As long as you have a pointer to a piece of data such as int* or void*
you should be free to dereference it to get the value.
Such as:
extern(C) int* myCFunc();
void main() {
int value = *myCFunc();
}
[0] http://dlang.org/interfaceToC.html
More information about the Digitalmars-d-learn
mailing list