問題タブ [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.
console - Freopen() が SDL で機能しない
freopen() を使用して「cout」関数をコンソールにリダイレクトしようとしましたが、目的の効果が得られません。実行可能ファイルをダブルクリックしてコンソールにメッセージを表示する代わりに、コマンド プロンプトまたはバッチ ファイルを使用する必要があります。 SDL ウィンドウを閉じずに表示されます。これは、コンソール アプリケーションであると想定されています。十分に明確でない場合は、お詫び申し上げます。
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?
c++ - freopen が指定されたファイルに書き込んでいない
ファイルを使用して stdout と stderr の出力をリダイレクトしようとしています。freopen を使用しています。正しいディレクトリにファイルが作成されますが、ファイルは空白です。コードをコメントアウトして stdout と stderr をリダイレクトすると、コンソールに出力が表示されます。
コードは次のとおりです。
メインに printf("I WORK") を配置しましたが、出力する抑制剤はありませんが、ファイルに書き込みません。
c - freopenを使用し、その後fopenを使用することは合法ですか?
文字列があるとしますchar* str
。次の方法でバッファに出力します。
このコードにより、無効なストリームバッファハンドルが発生する可能性がありますか?freopen
使用とその後の使用は合法fopen
ですか?私のシステムの制約に基づいて、私は使用できませfprintf
んsprintf
。
c - stdout ストリームに関連付けられたファイル
私は長いマルチスレッド アプリケーションを持っていますが、そのコードをここに追加することはできません。私が呼び出すメインプログラムから
その後、さまざまなスレッドが実行を開始します。そのうちのいくつかから、stdout への書き込みが発生します。それらのいくつかから stderr への書き込みが発生します (リダイレクトされる場合もあります)。へのランダムな回数の印刷が成功した後、突然、画面に印刷が表示されます。これはファイルuniq_name
に移動するはずです。uniq_name
このようなランダムな量の画面への印刷が予想外に行われた後、ファイルへの印刷が行われていることがもう一度わかりuniq_name
ます。Win7 と Linux では問題なく動作しますが、Win8 では失敗します。私はどんなアイデアにも興味があります(理論的であっても)-その理由は何ですか
c++ - freopen 後に stdout への WriteFile が失敗する
私は次のコードを書きました:
最後の行で、アサーション " Unhandled exception...:Access violation writing location 0x000000
" が得られます。何が問題で、その修正方法は?
ありがとうございました。
PS: プロジェクトの制限により、freopen を使用できません
android - fcloseは、AndroidとLinuxで動作が異なります
次のプログラム:
-1
ubuntu11.04および2
ICS4.0.3エミュレーターで表示されます。この問題に関する情報が見つかりません-このコードを両方のプラットフォームで同様に機能させることはできますか?freopen
onにstderr
も同じ問題があります。
アップデート:
以前の小さなプログラムは、私が直面した実際の問題の原因を示していfreopen
stderr
ます。存在しないディレクトリにファイルしようとすると、Linuxstderr
では閉じられますが、Androidでは開いたままになります。stderr
さらに、この開いたファイルにsmthを書き込んでfopen
から、他のファイルに書き込むと、印刷したテキストstderr
がこの開いたファイルに書き込まれます。
したがって、このプログラム:
Linuxでこれを示しています:
そしてこれはアンドロイドで:
c++ - 非定数文字列を使用して、freopenで出力ファイルを作成しようとしています
名前が文字列定数であるファイルを作成しようとしていますが、定数文字列「List」、整数++拡張子で構成される文字列です。これが私のコードです:
ビルドしようとすると、次のエラーが表示されます。
エラー:
std::string' to
引数1' to
FILE*のconstchar*'を変換できませんfreopen(const char *、const char *、FILE *)' |
どうすればこれを解決できますか?
c++ - freopen と ncurses の混合
ncurses ライブラリとの混合freopen
に問題があります。stdin
私がやっていることは、stdin をファイルに再度開き、それを flex+bison で解析してから、元に戻して ncurses を開始することです。
スワップのコードは次のとおりです。
私のレクサーでは、これが私がしていることです:
メインファイルでは、次のようなことをします
ここで、コメントしないとrevertStdin
、起動時に停止するだけです。代わりにコメントすると、解析は機能しますが、ncurses GUI は応答せず、時々点滅します。
両方の部分は独立して使用すると機能するため、それらを順次混合する際に、私が見逃しているいくつかの注意点があると思います. 誰も手がかりを持っていますか?
c - 出力ストリームを c の char[] に送信する
以下のようにファイルに再ルーティングするためにdup
andを使用しています。freopen
stdout
私がやりたいのはchar[]
、それを に再ルーティングして、操作できるようにすることです。明らかに、これは を使用して書き込む場合にはあまり役に立ちませんprintf
が、 に書き込むライブラリを使用するstdout
場合は、必要に応じて操作できるように、コードで出力を取得すると便利です。