[Haskell-cafe] converting between a Ptr a and an Integer

Sylvain HENRY hsyl20 at gmail.com
Sat Dec 7 18:16:10 UTC 2013


Hi,

You can use:
ptrToIntPtr :: Ptr a -> IntPtr
intPtrToPtr :: IntPtr -> Ptr a

Cheers
Sylvain


Le 07/12/2013 18:58, keydana at gmx.de a écrit :
> Hi,
>
> is there any way to convert between a Ptr a and an Integer?
> (I would like to attach to shared memory and dereference pointers to certain memory addresses, as you would do in C.)
>
> If there is no way at all, I think I could still get along by defining c_shmat as
>
> c_shmat :: CInt ->  CInt -> CInt -> IO (Ptr a)
>
> and perform calculations using plusPtr,
>
> but then how do I check if I got back the correct address, and not (void *) -1, which is what shmat returns on error?
>
> Any help very much appreciated!
>
> Thanks
> Sigrid
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe



More information about the Haskell-Cafe mailing list