我想问一下有人可以帮我解决我的问题。
我必须将任意等式解析为变量和数字。
等式将采用"y1 + y2 + ... + y10"
形式。
示例:"y1 + 2 y2 + 3y3 + y3 + 3 + 5 + 10 = y4 + 4"
可以有随机数量的空格。 “y1”不是1 * y。它是y,索引为1。
我正在考虑使用strchar(string," ")
并以这种方式解析它,但它可以没有空格,所以也许可以在char之后读取char,但后来我不知道怎么做像{{1}这样的方程式},也许如果我考虑获取第一个字符,然后读取下一个字符"3 y2"
,然后取下一个字符,看看它是变量还是“+”。我不需要它的源代码,我没有提示。
答案 0 :(得分:0)
我建议您执行Google搜索“C解析库”。这是一个看起来很有趣的:
http://warp.povusers.org/FunctionParser/
嗯,那个人实际上是C ++ ......如果你真的想要C,还有其他人。
您不是第一个遇到此问题的人,并且有解决它的库。
你也可以使用Flex和Bison。这是一个教程。