OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

出力について(初心者です)

  • すぐに回答を!
  • 質問No.213098
  • 閲覧数104
  • ありがとう数0
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 0% (0/4)

Borland のTurbC++をつかっています。
C言語であるプログラムを書いて、その結果をプレゼンテーションで使うことに
なりました。
プログラムを実行するとそのまま画面に結果が表示されるようにしたいのですが、
可能でしょうか?

今では実行すると、.exeファイルに格納され、そのファイルをまた実行しないと、表示されず、スクロールもできません。

何か方法がありますでしょうか?よろしくお願いします。
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全4件)

  • 回答No.1
レベル9

ベストアンサー率 33% (33/98)

> 今では実行すると、.exeファイルに格納され 実行可能ファイル(exeファイル)が生成されると言うべきです。 C言語で書かれたソースをコンパイラが機械語のファイルに変換します。その変換結果が実行可能ファイルですので あらかじめ、複数の実行可能ファイルを用意しておくのじゃ駄目なんでしょうか? >表示されず、スクロール どんな環境でプレゼンテーションするんでしょうか? パソコンの ...続きを読む
> 今では実行すると、.exeファイルに格納され
実行可能ファイル(exeファイル)が生成されると言うべきです。
C言語で書かれたソースをコンパイラが機械語のファイルに変換します。その変換結果が実行可能ファイルですので

あらかじめ、複数の実行可能ファイルを用意しておくのじゃ駄目なんでしょうか?

>表示されず、スクロール
どんな環境でプレゼンテーションするんでしょうか?
パソコンの画面を単に出力するのでしょうか?
Windowsなのだったら、DOSプロンプト(Win9X)かコマンドプロンプト(WinNT系)で実行したらうまく行きませんか?

はずしてたら補足をお願いします。
補足コメント
sibuya0224

お礼率 0% (0/4)

ご指摘、アドバイスありがとうございました。

>どんな環境でプレゼンテーションするんでしょうか?
まず、ソースをざっと見せて、その場でプログラムを実行させ、
その結果を表示したいと思っています。

DOSプロンプトで実行してみましたが、行数が足りず、
結果が(34行)すべて表示することができないのですが、
これを解決する方法はありますでしょうか?
例えば

あ・・・
い・・・
う・・・
・・・

というように文字列を34行表示したいです。よろしくお願いします。
投稿日時 - 2002-02-07 00:15:08
  • 回答No.2
レベル9

ベストアンサー率 49% (39/79)

こんばんは。 DOSプロンプト上で、 > 実行ファイル |more とすると、任意のキーを押すことにより1頁分づつ進んで表示します。 ...続きを読む
こんばんは。

DOSプロンプト上で、
> 実行ファイル |more
とすると、任意のキーを押すことにより1頁分づつ進んで表示します。
補足コメント
sibuya0224

お礼率 0% (0/4)

ありがとうございました。
実行してみたところ、1ページ分ずつ表示されましたが、
「続く」という文字も表示されてしまいます。
この文字を消すことはできないのでしょうか?


あと、文字列を表示する際に、
1行ずつ順に表示させる方法がありましたら、教えてください。
投稿日時 - 2002-02-07 17:06:37
  • 回答No.3
レベル9

ベストアンサー率 33% (33/98)

久しくDOSプロンプトを使用していなかったので、記憶が違ったようです。申し訳ありません^^; >WinNT系のコマンドプロンプトだとスクロール出来るんです、、言い訳ですが。 more コマンドで「続く」がでるのは消しようがないです。 表示用のプログラムを書くか、テキストファイルに書き出して、エディタで表示するかぐらいしか残念ながら思いつきません。 後者は xxx.exe > out ...続きを読む
久しくDOSプロンプトを使用していなかったので、記憶が違ったようです。申し訳ありません^^;
>WinNT系のコマンドプロンプトだとスクロール出来るんです、、言い訳ですが。

more コマンドで「続く」がでるのは消しようがないです。
表示用のプログラムを書くか、テキストファイルに書き出して、エディタで表示するかぐらいしか残念ながら思いつきません。

後者は
xxx.exe > out.txt としてやれば out.txt に実行結果を書き出せるので、そのテキストファイルをエディタで表示する。と言う物です。

前者なのですが、「1行ずつ順に表示させる方法」を実装してやって、画面の行数分表示というのはいかがでしょうか?
長くなりそうなので、プログラムは書きませんが、分からなければ、補足をお願いします。
なお、
xxx.exe | out.exe の様にすれば、out.exeの方の標準入力(stdin)にxxx.outの出力(stdout)が得られます。
  • 回答No.4
レベル12

ベストアンサー率 75% (398/526)

sssohei さんの言う通り、表示用のプログラムを書くのがよいと思います。 例えば次のようなプログラム(line.c)をコンパイルしておき、「実行ファイル | line」とすればOKです。 #include <stdio.h> #include <conio.h>   /* ※1 */ int main(int argc, char **argv)   /* ※3 ...続きを読む
sssohei さんの言う通り、表示用のプログラムを書くのがよいと思います。
例えば次のようなプログラム(line.c)をコンパイルしておき、「実行ファイル | line」とすればOKです。

#include <stdio.h>
#include <conio.h>   /* ※1 */

int main(int argc, char **argv)   /* ※3 */
{
  char str[256];   /* ※2 */
  int cnt = 0, i;

  if (argc >= 2) sscanf(argv[1], "%d", &cnt);   /* ※3 */
  if (cnt == 0) cnt = 1;

  while (1) {
    for (i = 1; i <= cnt; i++) {   /* ※3 */
      if (gets(str) == NULL) goto END;
      puts(str);
    }
    (void)getch();   /* ※1 */
  }
END:
  return 0;
}

※1.「実行ファイル | line」のようにパイプを使うと、line.exe 内の標準入力関数(stdio.h の関数)では、キー入力を読めなくなってしまいます。
 (その代わり、「実行ファイル」の出力が読み込まれます。)
 なので、コンソール入力関数(conio.h の関数)を使っています。
 (これならキー入力が読めます。)

※2.「実行ファイル」が出力する、最長の行の長さよりも大きく設定して下さい。

※3.line.exe にパラメータを渡すことで、1度に出力する行数を設定できます。
 3行ずつ出力する場合は、「実行ファイル | line 3」のようにして下さい。

不明な点がありましたら、補足をお願いします。
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ