• ベストアンサー

算術演算子について。

初歩的な質問ですみませんが、 void main(void) { char i = '+'; int j; j = 10(ここにiを使いたい)10; printf("%d",j); } の時に、10+10を行いたいのですが、 この時に、iを使うと言う方法はないのでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • smat7
  • ベストアンサー率46% (7/15)
回答No.1

演算子をそのままというの方法はないです 近そうなのは演算を関数化してしまうことでしょうか int func(int m, int n, char cal) { switch(cal){ case '+': return m+n; case '-': return m-n; /* 省略 */ } } 加減乗除の関数を定義して、演算時のそれらの関数ポインタを選択するようにするともう少しかっこがよくなりそうです

skyskynet
質問者

お礼

参考になりました!ありがとうございました。

その他の回答 (2)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.3

C言語の場合、インタープリタ言語のような実行時に文字列を構文として評価して実行するという機能がありません。 自分で関数呼出に置き換えるなど実装する必要があります。

skyskynet
質問者

お礼

参考になりました!ありがとうございました。

  • smat7
  • ベストアンサー率46% (7/15)
回答No.2

補足 j=func(10, 10, i); として使います 念のため

関連するQ&A