0
我正在創建一個deque並列出其中的元素。我爲此做了兩個函數:create_queue和print_queue。我發送了指針(頭部和尾部)作爲參考,所以我不必在全局中聲明它們。C++創建並打印deque
#include<iostream>
using namespace std;
struct Nod {
int info;
Nod* next, *back;
};
void create_queue(Nod*& p, Nod*& u)
{
Nod *c = new Nod;
cout << "c->info: "; cin >> c->info;
if (!p)
{
p = c;
p->back = NULL;
p->next = NULL;
u = p;
}
else
{
u->next = c;
c->back = u;
u = c;
u->next = NULL;
}
}
void print_queue(Nod*& p, Nod*& u)
{
Nod *c = p;
while (c) {
cout << c->info << " ";
c = c->next;
}
}
int main()
{
int n, i = 1;
Nod *p, *u = new Nod;
cout << "Nr nod: "; cin >> n;
while (i <= n){
create_queue(p, u);
i++;
}
print_queue(p, u);
getchar();
}
從我所瞭解的調試器中,我無法訪問p-> info。 問題是什麼?