//p不为NULL或者堆栈不空
为什么不是*top>*stack???? top 和stack是两个地址, 里面存的值大小与它们在栈中的位置没有关系, 因为使用malloc开辟的一个连续的空间给栈, 所以你就可以当做top>stack是比较类似于数组下标的比较,如果解指针出来的结果将是栈中元素的值剩下的问题都是指针的问题, *符号的优先级较自加和自减操作较低, 所以你也可以看做是遍历数组时候下标的加加和减减, 如果要解出来再加加减减会改变那个地址存放的具体数据的值;如果是刚开始接触链表, 可以把它看做一个数组(其实就是一个高级数组~~)...
|