問題タブ [freopen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
278 参照

console - Freopen() が SDL で機能しない

freopen() を使用して「cout」関数をコンソールにリダイレクトしようとしましたが、目的の効果が得られません。実行可能ファイルをダブルクリックしてコンソールにメッセージを表示する代わりに、コマンド プロンプトまたはバッチ ファイルを使用する必要があります。 SDL ウィンドウを閉じずに表示されます。これは、コンソール アプリケーションであると想定されています。十分に明確でない場合は、お詫び申し上げます。

0 投票する
2 に答える
236555 参照

c - Create a file if one doesn't exist - C

I want my program to open a file if it exists, or else create the file. I'm trying the following code but I'm getting a debug assertion at freopen.c. Would I be better off using fclose and then fopen immediately afterward?

0 投票する
1 に答える
1189 参照

c++ - freopen が指定されたファイルに書き込んでいない

ファイルを使用して stdout と stderr の出力をリダイレクトしようとしています。freopen を使用しています。正しいディレクトリにファイルが作成されますが、ファイルは空白です。コードをコメントアウトして stdout と stderr をリダイレクトすると、コンソールに出力が表示されます。

コードは次のとおりです。

メインに printf("I WORK") を配置しましたが、出力する抑制剤はありませんが、ファイルに書き込みません。

0 投票する
1 に答える
679 参照

c - freopenを使用し、その後fopenを使用することは合法ですか?

文字列があるとしますchar* str。次の方法でバッファに出力します。

このコードにより、無効なストリームバッファハンドルが発生する可能性がありますか?freopen使用とその後の使用は合法fopenですか?私のシステムの制約に基づいて、私は使用できませfprintfsprintf

0 投票する
0 に答える
176 参照

c - stdout ストリームに関連付けられたファイル

私は長いマルチスレッド アプリケーションを持っていますが、そのコードをここに追加することはできません。私が呼び出すメインプログラムから

その後、さまざまなスレッドが実行を開始します。そのうちのいくつかから、stdout への書き込みが発生します。それらのいくつかから stderr への書き込みが発生します (リダイレクトされる場合もあります)。へのランダムな回数の印刷が成功した後、突然、画面に印刷が表示されます。これはファイルuniq_nameに移動するはずです。uniq_nameこのようなランダムな量の画面への印刷が予想外に行われた後、ファイルへの印刷が行われていることがもう一度わかりuniq_nameます。Win7 と Linux では問題なく動作しますが、Win8 では失敗します。私はどんなアイデアにも興味があります(理論的であっても)-その理由は何ですか

0 投票する
1 に答える
701 参照

c++ - freopen 後に stdout への WriteFile が失敗する

私は次のコードを書きました:

最後の行で、アサーション " Unhandled exception...:Access violation writing location 0x000000" が得られます。何が問題で、その修正方法は?

ありがとうございました。

PS: プロジェクトの制限により、freopen を使用できません

0 投票する
3 に答える
1155 参照

android - fcloseは、AndroidとLinuxで動作が異なります

次のプログラム:

-1ubuntu11.04および2ICS4.0.3エミュレーターで表示されます。この問題に関する情報が見つかりません-このコードを両方のプラットフォームで同様に機能させることはできますか?freopenonにstderrも同じ問題があります。

アップデート:

以前の小さなプログラムは、私が直面した実際の問題の原因を示していfreopen stderrます。存在しないディレクトリにファイルしようとすると、Linuxstderrでは閉じられますが、Androidでは開いたままになります。stderrさらに、この開いたファイルにsmthを書き込んでfopenから、他のファイルに書き込むと、印刷したテキストstderrがこの開いたファイルに書き込まれます。

したがって、このプログラム:

Linuxでこれを示しています:

そしてこれはアンドロイドで:

0 投票する
3 に答える
2088 参照

c++ - 非定数文字列を使用して、freopenで出力ファイルを作成しようとしています

名前が文字列定数であるファイルを作成しようとしていますが、定数文字列「List」、整数++拡張子で構成される文字列です。これが私のコードです:

ビルドしようとすると、次のエラーが表示されます。

エラー:std::string' to引数1' toFILE*のconstchar*'を変換できませんfreopen(const char *、const char *、FILE *)' |

どうすればこれを解決できますか?

0 投票する
1 に答える
196 参照

c++ - freopen と ncurses の混合

ncurses ライブラリとの混合freopenに問題があります。stdin

私がやっていることは、stdin をファイルに再度開き、それを flex+bison で解析してから、元に戻して ncurses を開始することです。

スワップのコードは次のとおりです。

私のレクサーでは、これが私がしていることです:

メインファイルでは、次のようなことをします

ここで、コメントしないとrevertStdin、起動時に停止するだけです。代わりにコメントすると、解析は機能しますが、ncurses GUI は応答せず、時々点滅します。

両方の部分は独立して使用すると機能するため、それらを順次混合する際に、私が見逃しているいくつかの注意点があると思います. 誰も手がかりを持っていますか?

0 投票する
1 に答える
461 参照

c - 出力ストリームを c の char[] に送信する

以下のようにファイルに再ルーティングするためにdupandを使用しています。freopenstdout

私がやりたいのはchar[]、それを に再ルーティングして、操作できるようにすることです。明らかに、これは を使用して書き込む場合にはあまり役に立ちませんprintfが、 に書き込むライブラリを使用するstdout場合は、必要に応じて操作できるように、コードで出力を取得すると便利です。