
#include <stdio.h>
#include <stdlib.h>

typedef struct DF_NODE
{
    int a;
    DF_NODE* link;
}ST_NODE;

int main()
{
    DF_NODE* node = NULL;
    DF_NODE* node_tmp = NULL;
    DF_NODE* node_first = NULL;
    DF_NODE* node_before = NULL;
    int size = 0;

    size = sizeof(DF_NODE);
    node_tmp = (DF_NODE*) malloc (size);    
    node = node_tmp;
    node_first = node_tmp;
    printf("%x\n", node);

    node_tmp = (DF_NODE*) malloc (size);    
    node->link = node_tmp;
    node = node->link;
    printf("%x\n", node);

    node_tmp = (DF_NODE*) malloc (size);    
    node->link = node_tmp;
    node = node->link;
    printf("%x\n", node);

    printf("\n");
    node = node_first;
    for(;node;node_before=node,node=node->link)
    {
        printf("node : %x   node_before : %x\n", node, node_before);
        free (node);
    }
    
    
    
    return 0;
}
