我有一個應用程序需要閱讀並評估源文件中的表達式。我一直在使用muParser來做到這一點。但是現在我遇到了一個需要簡單循環支持的情況。我並不需要調用函數從腳本語言的能力,或任何其他先進的功能,真的只是:從C++中評估腳本化表達式
- 數學表達式(+, - ,/,*,&,|,〜,等)
- 邏輯表達式(!,||,& &等)
- 條件句(如果,否則..)
- 循環(對於)
隨着muParser我解析表達式AFTE R讀取它們,根據需要分配變量,然後求解:
expr="[0] + [1]*256 - 40"
在上述例子中,我會替換[0]和[1]與它們相應的變量,並且可以然後解決。現在,我需要這樣的事情:
expr="for(i=0; i < 10; i+=2) { if(i<=6) { [0] + [i]*256 -40; } }"
我在做的事情實際上是解析一個字節流。在腳本中,我將字節稱爲[byte],將位稱爲[byte] [bit]。有人可能會建議一個好的框架/腳本語言會讓我做這樣的事嗎?
也好(儘管不太廣泛使用)是AngelScript(http://www.angelcode.com/angelscript/),它有一個非常類似C++的語法。 – 2012-01-29 23:58:34
我想我會咬緊牙關,並選擇其中的一種。感謝所有 – Prismatic 2012-01-30 01:49:12