ホームページ > バックエンド開発 > C++ > POSIX ファイル記述子から C fstream を作成するにはどうすればよいですか?

POSIX ファイル記述子から C fstream を作成するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-25 16:42:09
オリジナル
983 人が閲覧しました

How Can I Create a C   fstream from a POSIX File Descriptor?

POSIX ファイル記述子からの C fstream の構築

この調査では、一見簡単そうに見えて複雑であることが判明したタスク、つまり C fstream の構築を示します。 POSIX ファイル記述子から。解決策はより単純なアプローチにありますか、それとも利用可能な適切なライブラリはありますか?

問題の複雑さ

専門家によると、標準の C メカニズムはありません。このタスク。ただし、 libstdc などの標準ライブラリの一部の実装では、非標準の拡張機能が提供されます。

非標準ソリューション

次の非標準ソリューションが利用可能です。

libstdc :

  • __gnu_cxx::stdio_filebuf クラス テンプレートを利用して、ファイル記述子からファイル ストリーム バッファーを作成します。
  • 例:
__gnu_cxx::stdio_filebuf<char> filebuf(posix_handle, std::ios::in);
istream is(&amp;filebuf);
ログイン後にコピー

Microsoft Visual C :

  • FILE* パラメーターを受け入れる非標準の ifstream コンストラクターを使用します。
  • 例:
ifstream ifs(::_fdopen(posix_handle, "r"));
ログイン後にコピー

結論

これを行う標準の C メソッドはありませんタスクに応じて、特定の実装によって提供される非標準の拡張機能が実行可能なソリューションを提供します。

以上がPOSIX ファイル記述子から C fstream を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート