- ベストアンサー
double (*foo)(double);
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関数ポインタですね。 状態変数等によって呼び出し関数を変える時に、関数ポインタのテーブルを引っ張ってきて呼び出したりすることがあります。 double (*foo[])(double) = {func1, func2, func3}; とかあった場合 int idx = 1; double param = 1.1; double ret; ret = (*foo[idx])(param); とすれば ret = func2(param); とするのと同じことです。
関連するQ&A
- doubleについて
すみません、下記のコードで double ans5 = (7+32)/(double)5; System.out.println("(7+32)/5は" + ans5 + "です。"); 右辺のdoubleが何故つくのかわかりません。5はintでいいと思うのですが、出る答えdoubleなので左辺をdoubleで指定しますよね?ならば、出てくる答えも自然doubleになるのではないのでしょうか? よく割り算の場合、左辺はdoubleで右辺の割る部分もdoubleで指定してありますすが、そういう決まりなんですか? 一度、消して実行したところ、やはり、小数点以下は切り捨てられていました。そういうものだと、このコードは分かっても他に応用が利かないので、詳しい方、教えてください。 かなり初心者ですがよろしくお願いします。」
- 締切済み
- Java
- ダブルクォートで囲まれた文字列の取り出し
Windows環境でRuby 1.8.7を使用しております。 ----sample1.txt----- hoge"foo\"bar\"foo"hage"bar\"baz\"bar"hoge ------------------ ファイルから1行ずつテキストを読み込んで処理を行います。上のsample.txtの様な行を読み込んだ場合にダブルクォートで囲まれた部分 foo\"bar\"foo bar\"baz\"bar を取り出すのにはどの様な正規表現を用いればよろしいでしょうか? エスケープされたダブルクォートを除ける上手い方法がわかりません。 また、ダブルクォートで囲まれた部分が複数行にまたがる場合はどの様に処理をすれば良いでしょうか? -----sample2.txt----- hoge"foo \"bar\" baz" hage ---------------------- -----sample3.txt----- hoge"foo \"ba r\"baz" hage ---------------------- 最初の例のように1行の場合は File.foreach(file) do | line | …… end で良いのですが、複数行の場合には同じように単純には行きません。 ダブルクォートの数を数えて、奇数の場合は偶数になるまで次行をくっつける様な処理を考えているのですが、もっと適切な方法はありますか? 宜しくお願いします。
- 締切済み
- Ruby
- (int)/(int)=(double)にする方法
(int)/(int)=(double)にする方法を教えて下さい。 例えば、 int a, b; double c; a=1; b=2; c=a/b; とすると、cとして0が計算されますよね。 0でなく0.5と計算させる方法をご存知の方教えて下さい。 ちなみに、a,bを最初の宣言の時点でdouble型にすることはできません。 よろしくお願いいたします。
- ベストアンサー
- その他(ソフトウェア)
- プログラミングは初心者なため、doubleについての問題がまったく分か
プログラミングは初心者なため、doubleについての問題がまったく分かりません・・・。できるだけ初心者にも分かりやすく簡単に回答していただけると幸いです。 1、double型の変数で扱える桁数を超えた桁数の数値を、double型の変数に入れると、制限を超えた桁数の部分がどのように扱われるか答えよ。 2、なぜ上記の1、ようにdoubleに制限があるかについて理由を答えよ。 回答お願いします!!
- ベストアンサー
- Visual Basic
- double型の精度
static doubleで配列を作り 0.3454703165とセットして 宣言しました。 しかし、実行してウォッチで見ると 0.345470316499999になってしまいます。 なぜでしょうか?
- ベストアンサー
- C・C++・C#
- C# exeファイルのダブルクリック
C#でプログラミングをはじめてみました。visual c#はインストールしていなくてcscでコマンドラインからコンパイルしています。 formが表示されるプログラムを作ったのですが、exeファイルをダブルクリックするとdos窓の上にformが表示されて実行されます。 dos窓の上にformが表示されるのが気に入りません。どうすれば、dos窓を表示させないで、formだけを表示させることができるのでしょうか?
- ベストアンサー
- C・C++・C#
- double型の比較・キャストについて
double a; double b; と宣言し、a、bを演算した結果、 if(a==b)とするのはa、bには多少の誤差があるため 使い方が間違っているのはわかりますが、 どういう仕組みで異なるのでしょうか。 double a=0.0と宣言し、 途中a=2.0と代入を行った場合も if(a==2.0)は使用方法が間違っているのでしょうか? どういうときに誤差がでて、どういうときは大丈夫なのでしょうか?
- ベストアンサー
- C・C++・C#
- Javaアプリケーションをダブルクリックで起動させるには?
今eclipseでJavaアプリケーションをつくっているのですが、 ダブルクリックで起動できるようなアプリケーションにするためには (.jarの形にするためには)どうしたらいいでしょうか? eclipse内で実行したらちゃんと動いたのですが… プログラミング初心者なのでできるだけわかりやすくご説明くだされば助かります。
- 締切済み
- Java
- double型をfloat型に強制変換
ある計算シミュレーションにおいてdouble型で不動点少数の変数を 宣言して使用しています。たくさんの変数をすべてfloat型に 変更したいのですが、コンパイラオプション (-r16)のような もので簡単に変換できますでしょうか? コンパイラはIntel c++ですがやgnu c++などを使用しています。
- ベストアンサー
- C・C++・C#
お礼
少し調べて理解しました。関数のポインタですか・・想像できませんでした。 素早いご返答ありがとうございます。