Stack *S;
S = (Stack *)malloc(sizeof(Stack));
S->elements = malloc(sizeof(*S->elements)*tld->tldCount);
typedef struct Stack
{
int capacity;
int size;
TLDNode** elements;
}Stack;
S->elements[S->size] = element;
or
S->elements[S->size] + 1 = element;
检索相同,我是否采用当前大小或大小-1
答案 0 :(得分:1)
S-gt; size字段未在发布的代码中设置,那么我们如何猜测呢?建议:S-> size = tld-> tldCount;
如果遵循关于设置S->大小字段的评论,那么当S->元素[S-> size]访问超出元素数组的末尾时,两个建议语句都不正确。记住,在C中,数组索引从0开始并以'数组长度-1'
结束如果size
字段用于指示element
数组中正在使用的条目数,那么这就是设置另一个元素的方法:
S->elements[S->size] = element;
S->size++;
但是,在进行任何此操作之前,需要这样做:
S->size = 0;
检索元素时,请说最近添加的元素使用:
S->size--;
element = S->elements[S-size];