先日はありがとうございました。
C言語のコンソール入出力で質問があります。
プログラム内でputs関数やprintf関数などを使用して、コマンドライン上に文字などを出力しますが、
これら出力した値を何らかの変数に保存して再度出力って出来ないんですかね。
調べてみたら、上の二つなどはstdoutに値を書き込んでいるという内容を発見したので、
stdoutを出力してみたんですが、I9という文字が出力されるだけでした。
ご助力お願いいたします。
コンソール出力の再利用
Re: コンソール出力の再利用
質問の意味がよくわかりません。
自分で作っているプログラムからprintfなどで出力されているのであれば,printfする前に,格納しておくことは可能ですよね。
他人が(またはプログラムが変更できない)プログラムを実行した後,コンソールに出力された文字を取り出したいということでしょうか?
自分で作っているプログラムからprintfなどで出力されているのであれば,printfする前に,格納しておくことは可能ですよね。
他人が(またはプログラムが変更できない)プログラムを実行した後,コンソールに出力された文字を取り出したいということでしょうか?
non
Re: コンソール出力の再利用
説明不足でした。すみません。
出力結果を再利用する関数を作ろうとしていると考えていただければよいかと。
出力される回数、変数や文字定数は、行う処理によって変わってきます。
処理によってはコンソール入力した内容などもコマンドラインに反映されています。
毎度、その処理の出力内容に合わせて変数、フォーマットを用意するより
コマンドライン上に出力されている文字列群をそのまま使えないかと考え、
質問させていただきました。
出力結果を再利用する関数を作ろうとしていると考えていただければよいかと。
出力される回数、変数や文字定数は、行う処理によって変わってきます。
処理によってはコンソール入力した内容などもコマンドラインに反映されています。
毎度、その処理の出力内容に合わせて変数、フォーマットを用意するより
コマンドライン上に出力されている文字列群をそのまま使えないかと考え、
質問させていただきました。
Re: コンソール出力の再利用
linux なら script コマンドなんでしょうが
ちょっと検索すればいろいろあります。たとえば
http://d.hatena.ne.jp/Wacky/20061112/1163339269
http://d.hatena.ne.jp/Wacky/20080420/1208698669
行数に制限ありますが、DOS窓の画面バッファーサイズを多めに取って
あとでコピペするのが一番お手軽。
ちょっと検索すればいろいろあります。たとえば
http://d.hatena.ne.jp/Wacky/20061112/1163339269
http://d.hatena.ne.jp/Wacky/20080420/1208698669
行数に制限ありますが、DOS窓の画面バッファーサイズを多めに取って
あとでコピペするのが一番お手軽。
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: コンソール出力の再利用
Win32APIで取得できたはずですが画面がバッファリングされる量にも限度があります。
あと、どの位置に描画されたかはどうやって管理するのでしょうか?
参考
「Win32API コンソールスクリーンバッファ情報を取得する GetConsoleScreenBufferInfo - s-kitaの日記」
http://d.hatena.ne.jp/s-kita/20100925/1285380726
あと、どの位置に描画されたかはどうやって管理するのでしょうか?
参考
「Win32API コンソールスクリーンバッファ情報を取得する GetConsoleScreenBufferInfo - s-kitaの日記」
http://d.hatena.ne.jp/s-kita/20100925/1285380726
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。