関数型プログラミング言語Haskell Part11
■ このスレッドは過去ログ倉庫に格納されています
0401デフォルトの名無しさん
2009/12/30(水) 14:19:53import Foreign.Ptr
import Foreign.C.Types
import Foreign.Marshal.Alloc
import Foreign.Marshal.Array
import Foreign.Storable
foreign import ccall "mkData" mkData :: Ptr (Ptr CInt) -> IO CInt
makeData :: IO (Maybe [CInt])
makeData = alloca $ \ a -> do { num <- mkData a; if num < 0 then return Nothing else (peek a >>= peekArray (fromIntegral num) >>= return . Just) }
■ このスレッドは過去ログ倉庫に格納されています