爲什麼我在這段代碼中遇到運行時錯誤?它有什麼問題?我是新的鏈接列表我無法理解爲什麼下面的代碼給運行時錯誤代碼有什麼問題?我正試圖動態實現堆棧。請幫助!動態堆棧阻塞 - 這段代碼有什麼問題?爲什麼我得到運行時錯誤?
#include <iostream>
using namespace std;
struct stack
{
int a ;
struct stack *n;
};
typedef struct stack st;
st *top = new st;
//插入該元素
void push(int a)
{
st *p;
p = new st;
p->n = top;
top = p;
}
//提取元素一樣
int pop()
{
st *p;
p=top;
if(top == NULL)
{
cout<<"stack is already empty";
}
else
{
top = top->n;
return p->a;
delete p;
}
}
//DISPLAY FUNCTION
void display()
{
st *p;
p=top;
while(p!=NULL)
{
cout<<p->a;
p=p->n;
}
cout<<p->a;
}
int main()
{
push(1);
push(2);
push(3);
push(4);
push(5);
display();
int s=pop();
cout<<s;
display();
return 0;
}
你是如何正確輸入標題,然後開始在問題主體中大喊大叫的? –