我正试图找到一种方法来将字符串转换成我的代码行。
例如,我想尝试这样的事情:

int x=3;
char str[80];
gets(str);  // Assuming the user gives input: "x + 3"
y = str;
printf("%d",y); // Output: "6" (3 + 3)

所以这个程序输出“6”(3+3)。
我想用这个来建立一个功能绘图机但在这里我被卡住了,找不到任何办法你能告诉我把这些字符串转换成代码行的方法吗?

最佳答案

你要做的是表达式求值我建议两种方法,也许可以帮助您更接近预期的解决方案。
用二叉树计算表达式:构建一棵树,它表示表达式和运算符之间的优先级。
可能是上面提到的抛光形式,基于堆栈的评估首先使用堆栈构建原始表达式的波兰形式,然后再次使用堆栈计算波兰形式。最后一个:使用谷歌和这些键盘:)

关于c - 将字符串转换为C语言中的代码行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8038290/

10-11 08:05