Chinaunix

标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!! [打印本页]

作者: netsmallant    时间: 2003-12-29 12:22
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
int num[]={3,5};
char opt[]={'+'};
//形如:result=3+5;
result=num[0]opt[0]num[1];
操作符是数组元素如何实现???
作者: flw    时间: 2003-12-29 12:26
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
不行。
作者: lenovo    时间: 2003-12-29 12:28
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
你自己去解析一下,比如用switch,case语句,
判断如果是'+',就把两个数相加。
你最好把操作符定义为enum类型。
作者: netsmallant    时间: 2003-12-29 12:39
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
有没有把字符串转换成表达式的函数或方法呀???
作者: flw    时间: 2003-12-29 12:43
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
没有。
作者: lylzp    时间: 2003-12-29 12:43
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
[quote]原帖由 "netsmallant"]有没有把字符串转换成表达式的函数或方法呀???[/quote 发表:


方法肯定是有的,函数我就不知道了。
作者: netsmallant    时间: 2003-12-29 12:46
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
其他语言有吗?详细一点?
作者: JohnBull    时间: 2003-12-29 13:00
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
把操作封装成函数,用函数指针实现吧.
或者干脆用shell脚本编写.
作者: flw    时间: 2003-12-29 13:06
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
[quote]原帖由 "netsmallant"]其他语言有吗?详细一点?[/quote 发表:

Perl 有。
作者: river_wave    时间: 2003-12-29 13:28
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
lex+yacc
作者: 蓝色键盘    时间: 2003-12-29 15:50
标题: 各位大侠帮忙看看——操作符是数组元素如何实现!!!
int num[]={3,5};
char opt[]={'+'};
//形如:result=3+5;
result=num[0]opt[0]num[1];
操作符是数组元素如何实现???

1、将+定义为一个TOKEN,用yacc可以简单实现。

2、如果想通过c来实现一个简单的语句构造。
sprintf(strbuf,"result=%d%s%d;\n",num[0],opt,num[1]);




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2