之前发过这个问题,代码贴上来,再次劳烦各位

#include
#include
#define MAX 100
#define STACK_INIT_SIZE 10
#define STACKINCREMENT 10
typedef struct{
char str[10];
}SElemType;//自定义元素类型。
typedef struct{
SElemType base;
SElemType *top;
int stacksize;//栈长度。
}SqStack;//顺序栈
SqStack *OPTR,*OPND;
int InitStack(SqStack *S){
S->base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType));//分配空间。
if(!S->base) return 0;
S->top=S->base;//空栈。
S->stacksize=STACK_INIT_SIZE;
return 1;
}//栈S的初始化。
int main(){
InitStack(OPTR);
/*InitStack(OPND);
//Push(OPTR,"#");
SElemType *e;char *str;
scanf("%s",str);
/
return 0;
}
这是里面报错的部分,我单独写出来测试,调用initstack报错,谢谢之前的回答

什么意思?麻烦稍微说详细点,怎么改?那个不是指针类型吗?

还有,小弟最近学这个挺上瘾,只是苦于找不到交流代码的人,初学,请教推荐下哪能找到讨论组,带我找到组织图片说明,扣扣群加了个,都没什么人讨论郁闷

S->base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType));//分配空间。
S->base不是指针类型,指针S动态分配内存的时候,base也会随之分配内存

哦,那个*号不小心弄点了,源代码有的,仍然报错