为什么定义边界指针时总有一个要从-1开始

img

这种初始化是用于线性栈的,也就是用一个数组来组成栈,栈顶指针值为当前栈顶元素的下标值。
当有数据入栈时,会先执行栈顶指针自加。
初始化为空栈,规定空栈的时候指向-1,这样在有第一个元素入栈的时候栈顶指针就可以通过自加指向0元素,从而避免其它判断。