2 回答

TA貢獻1793條經驗 獲得超6個贊
這個應該是頭文件,但是公共函數應該加上inline優化一下。
enum 枚舉變量 BOOL
結構,包含一個double類型和char類型
int IsDigit(char); //判斷是否是數字(0-9)
int isp(char ch); //判斷是否是字符(A-Z) 返回相應的InPriority數組中值
int icp(char ch); //判斷是否是字符(A-Z) 返回相應的OutPriority數組中值
int Locate(char ch);//判斷是否運算符(+,-,*,/,^)
猜想一下,這個估計是用來做詞法分析的,分析字符串的運算表達式。
做編譯器?

TA貢獻1804條經驗 獲得超8個贊
static char Operator[]="#(+-*/^"; //?????
運算/操作符。Operator[0]="#" 是 棧操作,push,pop. Operator[1]="(" 是 括號,進入一層。Operator[2]="+",Operator[3]="-",
Operator[4]="*",Operator[5]="/",是 加減乘除,Operator[6]="^" 是冪 運算.
static int InPriority[]={0,1,3,3,5,5,7}; //????
進入/輸入時的優先級
static int OutPriority[]={0,10,2,2,4,4,6}; //?????
退出/輸出時的優先級
for(y=stack[top--];isp(y)>icp(*p);y=stack[top--]) //?????
從棧頂起,往下查一個一個字符,按優先級isp(y)>icp(*p)判斷循環終了。
- 2 回答
- 0 關注
- 172 瀏覽
添加回答
舉報