| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 415 人关注过本帖
标题:链表的头指针和头结点
只看楼主 加入收藏
Demoon
Rank: 2
等 级:论坛游民
帖 子:16
专家分:34
注 册:2012-9-12
收藏
 问题点数:0 回复次数:6 
链表的头指针和头结点
如题,头指针需要二级指针,二级指针的用法,请求大神给实例
2012-09-18 17:59
hrc2010a
Rank: 2
等 级:论坛游民
帖 子:16
专家分:55
注 册:2012-9-12
收藏
得分:0 
给楼主解难来啦!!!!!!!!!!!!!
#include <stdio.h>
#include <stdlib.h>
struct node{
    int data;
    struct node *next;
};
void exchange(struct node **root)    //通过二级指针传参修改链表的头
{
    struct node *new = NULL, *head = NULL;
    head = *root;
//  printf("head in exchange = %p\n",head);
    new = (struct node *)malloc(sizeof(struct node));
    new->data = 10;
    new->next = head->next;
    *root = new;
//  printf("head = %d\n",head->data);
}
int main(void)
{
    struct node *head = NULL;
    struct node *tail = NULL, *new = NULL;
    int n;
    for(n = 1;n < 6; n++)        //建立链表
    {  
        new = (struct node *)malloc(sizeof(struct node));
        new->data = n;
        new->next = NULL;
        if(NULL == head)
        {
            head = new;
            continue;
        }
        for(tail = head; tail->next != NULL; tail = tail->next)
            ;
        tail->next = new;
    }
    for(tail = head; tail != NULL; tail = tail->next)  //修改前打印链表
    {
        printf("%d ",tail->data);
    }
    printf("\n");
    struct node **root = &head;             //给二级指针赋值
//  printf("head in main %p\n",head);
    exchange(root);
    for(tail = head; tail != NULL; tail = tail->next)  //修改后打印链表
    {
        printf("%d ",tail->data);
    }
    printf("\n");
    for(tail = head; tail != NULL; tail = new)  //free链表
    {
        new = tail->next;
        free(tail);
    }
    return 0;
}
                                                      
                                                                                                           
2012-09-19 13:45
Demoon
Rank: 2
等 级:论坛游民
帖 子:16
专家分:34
注 册:2012-9-12
收藏
得分:0 
可能基础不太好,花了好久才理解
2012-09-20 00:07
阿简
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-9-20
收藏
得分:0 
正在努力学习中,
2012-09-20 18:56
hrc2010a
Rank: 2
等 级:论坛游民
帖 子:16
专家分:55
注 册:2012-9-12
收藏
得分:0 
兄弟!!!!应该给点分了吧!!!!
2012-09-20 20:20
Demoon
Rank: 2
等 级:论坛游民
帖 子:16
专家分:34
注 册:2012-9-12
收藏
得分:0 
问题没分啊
2012-09-22 16:21
hrc2010a
Rank: 2
等 级:论坛游民
帖 子:16
专家分:55
注 册:2012-9-12
收藏
得分:0 
没事!!!!对楼主有帮助就行了
2012-09-25 23:37
快速回复:链表的头指针和头结点
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021034 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved