- ベストアンサー
文字としてではなく/,*,-,+の記号を代入する場合
/,*,-,+の記号を式として使いたく文字の指定以外で /,*,-,+の記号を代入する場合どの様な形式の入れ物に代入すればいいのでしょうか? ? a = +; int b = 1 a 1; としたいのですがこんな事ができるのでしょうか? 宜しくお願いいたします
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>エクセルの様な式を入れて計算させるようにしたいのです。 あまりぴんとこないんですが、エクセルでは入力されたセルの文字列を解析して計算しています(きっと)。 PerlやVBなんかでは eval という関数(?)で似たことができます。 C/C++では関数を作るしかないですね。 > int b = 1 a 1; という機能を実現させるとき int calc (int sign, int a, int b) { switch (sign) { case 0: return (a + b); case 1: return (a - b); case 2: return (a * b); case 3: return (a / b); } } おもいっきり簡単に(しかも適当に)書くとこんな感じでしょう。
その他の回答 (3)
- jppy
- ベストアンサー率14% (14/99)
変数入れるのは無理かな 入力文字から計算方法を認識してスイッチ文などで分岐が一般的ではないでしょうか
お礼
ありがとうございます。 経験ある皆さん一緒なのでスイッチ文でがんばってみます。
- damejan
- ベストアンサー率30% (58/192)
> /,*,-,+の記号を式として使いたく文字の指定以外で/,*,-,+の記号を代入する できません。 > /,*,-,+の記号を式として使いたく どういう場面で使いたいのでしょうか?
お礼
ありがとうございます エクセルの様な式を入れて計算させるようにしたいのです。 使用してるのはC++Builder 6です。 エクセルとかはどの様にしてるのでしょうか? もしおわかりなら教えていただけませんか? 宜しくお願いいたします
- yatokesa
- ベストアンサー率40% (201/496)
C/C++ではできません
お礼
できないですか ありがとうございます
お礼
ありがとうございます やっぱりこれを繰り返すしかないんですね....