若要将一个运算符赋给一个数组,该怎么进行?如下的程序有和有关问题?

若要将一个运算符赋给一个数组,该如何进行?如下的程序有和问题??
若要将一个运算符赋给一个数组,该如何进行?如下的程序有和问题??
#include <stdio.h>
main()
{
char   temp[2];
int   i=2,c;
temp[0]= '+ ';
c=i   temp[0]   i;
prinf( "%d ",c);
}

------解决方案--------------------

prinf( "c= i [%c] i = %d ",c,i+i);
------解决方案--------------------
char temp[2];
int i=2,c;
temp[0]= '+ ';
prinf( "c= i [%c] i = %d ",temp[0],i+i);
------解决方案--------------------
在C里没有操作符重载方式,因此,楼主不可能得到你所要的表达方式。
不过,东西是死的,人是活的,我们可以作如下变通:
int Op(int a,int b,char c)
{
switch(c){
case '+ ':return a+b;
case '- ':return a-b;
case '* ':return a*b;
case '/ ':return a/b;
case '% ':return a%b;}
exit(1);
}
这样,楼主的问题就变成了:
#include <stdio.h>
main()
{
char temp[2];
int i=2,c;
temp[0]= '+ ';
c=Op(i,i,temp[0]); // c= i temp[0] i;
prinf( "%d ",c);
}
------解决方案--------------------
可以这样:

#define ADD +

#include <stdio.h>
main()
{
int i=2,c;
c=i ADD i;
prinf( "%d ",c);
}