如何根据字符数组去执行相应的函数或者查找到变量(急!)
现在需要在没有操作系统的powerPC上完成这样一个类似串口的输入输出功能。注意是没有操作系统的裸CPU。
现在输出已经基本没问题了,可以通过SCC将数据打印在PC机的串口上,通过串口接收数据也没什么问题。
但是现在的问题是,我通过SCC接收到数据后,将所有的数据存放在一个字符数组中,如何根据里面的字符执行相应的函数,或者返回相应的变量值了?
比如,有用户在串口上敲入: printf "test",然后回车,那么在我接收到这些数据后,存放在数组char[]型中,数组里的数据应该是"printf "test""。我可以解析这个数组,根据空格的位置找到函数名和参数,但是我又该如何去将这些字符和符号表内的函数联系起来了?
再比如,如果用户用户敲入:var,(这里var假设是一个全局变量),那么在接收数组中,存储的字符是"var",我又怎么将这些字符和变量联系起来,并获取变量的值了?
还有,我如何区分用户敲的是变量名还是函数名了?
可能符号表会有些帮助,这些可能应该都在符号表中,但是因为没有操作系统,符号表好像也是在编译的过程中产生的,不知道该怎么去找到符号表在哪了?
希望大家有什么好的想法可以说说,谢谢大家!!
[解决办法]