![](https://i-blog.csdnimg.cn/blog_migrate/727880816bc740256a5e2da5002abd41.jpeg)
#include<stdio.h>
#include<stdlib.h>
typedef struct node{
int num;
struct node* node_next;
}Node;
Node *Initialize_Node(Node *p);
Node *Add_Node(Node *p,int n);
void Show_Node(Node *p);
int main(){
Node *pdata=NULL;
for(int i=0;i<100;i++)
if(!(pdata=Add_Node(pdata,i))){
pdata=Initialize_Node(pdata);
return 1;
}
Show_Node(pdata);
pdata=Initialize_Node(pdata);
return 0;}
//
Node *Initialize_Node(Node *p){
if(p){
for(Node *ptemp=NULL;p;){
ptemp=p;
p=p->node_next;
ptemp=(Node *)realloc(ptemp,0);
}
}
return p;}
Node *Add_Node(Node *p,int n){
Node *pcopy=NULL;
Node *pcall=NULL;
if(!(pcall=(Node *)calloc(1,sizeof(Node)))) return NULL;
pcall->num=n;
pcall->node_next=NULL;
if(!p) p=pcall;
else{
for(pcopy=p;pcopy->node_next;pcopy=pcopy->node_next);
pcopy->node_next=pcall;
}
return p;}
void Show_Node(Node *p){
for(;p;p=p->node_next)
printf("%d ",p->num);
fputs("\b.\n",stdout);
}