表达式求值的 计算器
写调试器的时候 ,写了这个代码,平时用系统的计算器,很不爽,因为输入太麻烦
支持 10 进制 以及 十六进制的 算式 , 支持所有c语言的运算符 ,优先级也是一样的 ,以下是测试的代码
TCHAR* es[] = { // _T("") , _T("10 *(a+b) ") , _T("10 << b-a") , _T("a - ~b ") , _T("a+ b++") , _T("~++b ") , //优先级相同 , 都是右结合性, 应先计算右边的运算 }; for (int i = 0; i <5; i++) { HexEquation e(es[i]); e.compile(); printf("---- 结果是:%x\n" , e.result); }
c++的代码, 如果要扩展的话,直接继承,重写几个函数就可以了. 需要代码请发邮件给我
如无特别说明, 文章为本人原创, 转载请注明出处, 也欢迎批评指正
-------------------------------------------------------------------
如有问题, 欢迎邮箱讨论: lyogogo@outlook.com
-------------------------------------------------------------------
如有问题, 欢迎邮箱讨论: lyogogo@outlook.com