我實現算術計算器,但我得到的錯誤:錯誤之前 - >標記
錯誤:預期前主表達式「)」令牌 錯誤:預期主表達式前「 - >」令牌
我張貼包含錯誤的行。
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
/*creating stack*/
typedef struct stack
{
int top;
char *array;
int max_size;
}S;
/*pushing character to it*/
void push(S *st ,char ch)
{
if(st->top==st->max_size)
{printf("already full..delete some items :)");return ;}
printf("st->top=%d ",st->top);
strcpy(&st->array[st->top],&ch);
st->top++;
printf("push=%s ",st->array[st->top-1]);
}
/*deleting character*/
void pop(S *st)
{
if(st->top==0)
{printf("it's empty..push some items :)");return ;}
st->top--;
}
void fun(S *stack,S *post,char a)
{
while(strcmp((&stack->array[stack->top]),&a)!=0)
{
pop(stack);
push(post,stack->array[stack->top+1]);
}
pop(stack);
}
int main()
{
int i,j;
char str[10000];
/*initialize 3 stacks*/
S *st =init(10000);
S *post=init(10000);
S *ans=init(10000);
/*actually code is very big so i am
giving only lines in which there is error*/
//some code...
fun(stack,post,a);
//some code...
while(precedence(str[i])>precedence(stack->array[stack->top]))
//some code...
push(post,stack->array[stack->top]);
pop(stack);
//more code......
}
那麼......它在抱怨什麼? – Mysticial
這。格式化。是。所以。壞。所以。壞。 ! – Dariusz
這段代碼真的很糟糕,它有很多錯誤,向別人展示這些代碼並尋求幫助是相當不禮貌的。試着組織一下你的代碼,這對你有很大的幫助。適當地格式化它,如果這是在談論類型或對象,則使用清楚的名稱。在使用它之前聲明一個變量。 –