laocai30 2022-04-07 11:34 采纳率: 76.3%
浏览 42
已结题

怎么说是取消对空指针s的引用呢

#include using namespace std;typedef struct StackNode{ int date; struct StackNode* next;}StackNode,*LinkStack;void Init(LinkStack& S){//构造一个空栈,栈顶指针置空 S->next= NULL;}void Push(LinkStack& S, int e){ LinkStack p = new StackNode;//生成新结点 p->date = e; p->next = S; S = p;}int Pop(LinkStack& S){ if (S = NULL) return 0; LinkStack q = S; S = S->next; delete q; return true;}void GetTop(LinkStack& S){ cout << S->date << endl;}int main(){ LinkStack S; Init(S); int n; cout << "要存入链栈的元素个数n:" << endl; cin >> n; cout << "要输入元素的值:" << endl; for (int i = 0; i < n; i++) { int e; cin >> e; Push(S, e); } Pop(S); GetTop(S); return true;}

img

img

  • 写回答

1条回答 默认 最新

  • [PE]经典八炮 2022-04-07 12:09
    关注

    你主函数的S都没分配内存怎么就用

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月12日
  • 已采纳回答 4月12日
  • 创建了问题 4月7日