私はFILE *
を消費し、別のFILE *
にデータを出力するライブラリを持っています。iOS上のC/Objective-Cにメモリマップファイル*を作成できますか?
このライブラリへの入力と、このライブラリの出力を、ディスク上のファイルに読み書きすることなく、メモリ上で処理したいと考えています。
私たちはiOSでこれをやっているので、別のアプリとしてライブラリを実行し、stdin
/stdout
を使っても実行可能なオプションはありません。
私はFILE *
を消費し、別のFILE *
にデータを出力するライブラリを持っています。iOS上のC/Objective-Cにメモリマップファイル*を作成できますか?
このライブラリへの入力と、このライブラリの出力を、ディスク上のファイルに読み書きすることなく、メモリ上で処理したいと考えています。
私たちはiOSでこれをやっているので、別のアプリとしてライブラリを実行し、stdin
/stdout
を使っても実行可能なオプションはありません。
にObjCはCのスーパーセットなので、あなたがしなければならないすべては、それ自体が機能readfn
が含まれていfunopen()
へのアクセス、writefn
、seekfn
、およびclosefn
を得るために#import/#include <stdio.h>
です。 fwopenには、この2つのストリームに書き込む方法を示す例があります。SO question
fmemopen
とopen_memstream
は明らかにunportable linux functionsであるため、Mac OSXとiOSにはfmemopen
とopen_memstream
が含まれていません。
https://github.com/shyuep/pyhull/tree/master/src/fmemopenを見て、私はMac OSX 10.8.2で自分自身でテストしましたが、うまくいきました。
著者は、iOSでも動作すると述べています。
[fmemopen](http://pubs.opengroup.org/onlinepubs/9699919799/functions/fmemopen.html)と[open_memstream](http://pubs.opengroup.org/onlinepubs/9699919799/functions/open_memstream)があります。 .html)が、iOSで利用できるかどうかわかりません – Christoph
いいえ、iOSまたはOS Xでは利用できません。 –