
C言語からgnuplotを呼び出したいのですが、一瞬表示されてすぐ消えてしまいます。
プログラムは以下のように書きました。
---------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char **argv)
{
FILE *gid;
int i;
double x;
gid=popen("gnuplot -persist","w");
for (i=0; i<100 ;i++){
x = 0.03*i;
fprintf(gid,"plot sin(x-%f*pi)\n",x);
}
pclose(gid);
}
---------------------------------------------------------------
この後、
gcc test.c -lm
./a.out
でコンパイル、実行しました。
かなり初心者なので初歩的な質問かもしれませんがよろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
>C言語からgnuplotを呼び出したいのですが、一瞬表示されてすぐ消えてしまいます。
消えるという意味は理解できませんが、「plot sin(x-%f*pi)」の定数項「%f*pi」が 0.03 刻みで変わる sin(x-const) のサインカーブを描くよう GnuPlot に命令をC言語で作ろうというものですよね。
一瞬表示で消えてしまうという不満のようですから、表示にディレイ(pause)を入れましょう。なお、GnuPlot に sin(x-const) の曲線を描くよう命令するもので、sin(x-const) の値を描画しろというものではありませんから、math.h と -lm オプションは不要です。
コンパイルして実行すると、グラフが右の方にスクロールします。
/* SIN(x - aπ) を描く
* file neme: test.c
* compile : gcc test.c
* execution: ./a.out
* by MacOSX
*/
#include <stdio.h> //fprintf(), popen(), pclose()
int main(void)
{
FILE *gid;
int i;
gid=popen("gnuplot -persist","w");
for (i=0; i<100 ;i++){
fprintf(gid, "plot sin(x-%.2f*pi)\n", 0.03*i);
fprintf(gid, "pause 0.2\n");
}
pclose(gid);
return 0;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# バイナリファイルをコピーするのにかかる時間を測りたいのですが実行するとFatel error:gli 2 2022/11/03 01:10
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# 並列プログラミングのπ計算について 1 2022/07/16 22:30
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# Cのdoubleの浮動小数点表示について 3 2023/04/17 13:14
- C言語・C++・C# プログラミング c言語 4 2023/03/07 01:05
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# 質問です 下記のコードを分かりやすく解説お願いします 初心者です #include ‹stdio.h 3 2022/05/26 22:03
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
-
大麻の使用罪がなかった理由や法改正での変更点、他国との違いを弁護士が解説
ドイツで2024年4月に大麻が合法化され、その2ヶ月後にサッカーEURO2024が行われた。その際、ドイツ警察は大会運営における治安維持の一つの方針として「アルコールを飲んでいるグループと、大麻を吸っているグループ...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
違い
-
なぜ、C++の標準ヘッダをインク...
-
VC++で
-
プログラミング言語Cとプログラ...
-
findnext();について
-
アンワインド セマンティクス
-
C++での <iostream.h>と<iostre...
-
#defineの使い方について
-
iostream インクルード時に発生...
-
ヘッダーファイルがインクルー...
-
switch文のエラーについて
-
CStringとString
-
enumの値から定義名を文字列化...
-
C++で日本語の処理がしたいです
-
mainの外に変数 vs ポインタ渡し
-
gccでコンパイル時のエラー
-
空白を含む名前のファイル等を
-
wstringの主力
-
snprintfが使用できない。
-
構造体の各メンバにfor文からア...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
なぜ、C++の標準ヘッダをインク...
-
switch文のエラーについて
-
VC++で文字列から任意の文字を...
-
構文エラーが出ているのですが...
-
gccでコンパイル時のエラー
-
空ENTERの判別
-
vectorのイテレータを大小比較...
-
JPEGやPNGが読めるLoadImage関数
-
C++で、テキストファイルを一行...
-
std::wstringのメモリリークに...
-
enumの値から定義名を文字列化...
-
CStringとString
-
#define中の#のエスケープ
-
std::map の const 修飾について
-
#include "fstream.h"
-
_tcscat がうまくいきません(V...
-
C言語のポインターで詰まっている
-
構造体配列のvectorへの変換と...
-
C++での <iostream.h>と<iostre...
-
ヘッダーファイルがインクルー...
おすすめ情報