栈顶指针 S.top初始化为0,入栈操作为什么是这样的?看不懂

2025-02-28 07:10:17
推荐回答(3个)
回答1:

是的,指向栈顶元素下个位置。
因为++运算符含义是变量先参与其他运算,再自加。
S.data[S.top++]=x;这句就相当于:

S.data[S.top]=x;
S.top++;

回答2:

如果你的s指的是栈底指针的话。s指在栈底top指向栈定一开始是一样的有新元素压栈后就不一样了。
top永远指向栈顶,随着出栈入栈,栈顶是变化的。而s是不变的,永远指向栈底。

回答3:

指向的是栈顶的下一个位置