表示式求值

2021-08-14 07:53:05 字數 1423 閱讀 9509

sc; //stackchar型別的結點sc

typedef struct stackfloat

sf; //stackfloat型別的結點sf

sc *push(sc *s,char c) //sc型別的指標push,返回p

sf *push(sf *s,float f) //sf型別的指標push,返回p

sc *pop(sc *s) //sc型別的指標pop

sf *pop(sf *s) //sf型別的指標pop

float operate(float a,unsigned char theta, float b) //計算函式operate

}

char opset[opsetsize]=;

status in(char test,char *testop)

return find;

}

status returnopord(char op,char *testop)

} char precede(char aop, char bop)

float evaluateexpression(char* myexpression)

;

optr=push(optr,'#');

c=strcat(myexpression,dr);

strcpy(tempdata,"\0");//字串拷貝函式

while (*c!= '#' || optr->c!='#')

}

else // 不是運算子則進棧

//evaluateexpression

int main(void)

system("pause");

return 0;

}以下為執行結果:

表示式求值

程式的說明見清華大學出版社 資料結構 c語言版 include include define stack init size 40 define stackincrement 20 define ok 1 define false 0 typedef structs stack typedef st...

表示式求值

既然是表示式求值,自然需要在記憶體中儲存計算結果以及中間值。在 用c語言寫直譯器 一 中提過 變數要求是若型別,而 c 語言中的 view plaincopy to clipboardprint?in basic io.h define memery size 26 typedef enum var...

表示式求值

寫了乙個下午,各種糾結,各種問,終於搞明白了。但是自己還是想出來的一點東西的。很爽歪歪的,哈哈。先貼第一次的 include include include include include includeusing namespace std char data 7 7 int sign char ...