用结构体指针来实现链表,添加新结点时动态申请空间。
代码如下:
#include<iostream> using namespace std; struct Node { int data; Node *next;//自引用结构 }; Node *hd,*ed,*p;//结构体指针 int n,x; int main() { hd=new Node;//动态申请,也可用于数组的指针,例: // int *a; int n=10; // a=new int[n+1]; ed=hd; scanf("%d",&n); for(int i=1;i<=n;i++) { scanf("%d",&x); p=new Node; p->data=x;//或 (*p).data=x; p->next=NULL; ed->next=p; ed=p; } p=hd->next; while(p) { printf("%d ",p->data); p=p->next; } return 0; }