在C++数据结构中有这样的一段代码
typedef int ElemType;
typedef struct {
int stacksize;
ElemType *base;//Top和base都是来存取栈的位置 区索引作用
ElemType *top;
}sqStack;
//创建stack
void sq_Init(sqStack *s)
{
s->base = (ElemType*)malloc(Stack_Init_Size*sizeof(ElemType));
if(!s->base)
exit(0);
s->top = s->base;
s->stacksize = Stack_Init_Size;
}
那在我需要调用sq_Init函数的时候,应该怎样传值。
是
int main()
{
sqStack s;
sq_Init(&s);
return 0;
}
还是
int main()
{
sqStack *s;
sq_Init(s);
return 0;
}
为什么呢?提前谢谢大家了!