我想知道是否有任何方法可以将表达式作为字符串并将其作为数学表达式进行评估?
#include <stdio.h>
#include <conio.h>
void main {
char expression[100];
int answer;
scanf("%s", &expression);
// Let expression = "10+5"
answer = expression
printf("%d", answer);
// Print 15
getch();
}
是否有任何可以帮助我完成此任务的库或内置函数?我正在使用Turbo C ++ 3.0。
P.S:我不能使用现代编译器,因为它包含在我们的教学大纲中。
答案 0 :(得分:2)
没有
answer = expression
毫无意义。如果您想要answer = find_answer(expression)
,并且此函数find_answer()
是您真正想知道的,如果存在,答案仍为“否”,C中没有内置的数学字符串解析器。您可以编写如果你把它变得简单(只有基本操作符和两个操作数,一开始),它本身就不是很难。
编辑:问题已经修复了错误,删除了部分答案。