|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 数据结构与算法 』
→ 帮忙修改一个"List.h"以实现对任意数据类型的支持。
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
762
人关注过本帖
标题:
帮忙修改一个"List.h"以实现对任意数据类型的支持。
只看楼主
加入收藏
sxzjw
等 级:
论坛游民
帖 子:32
专家分:21
注 册:2010-5-23
结帖率:
57.14%
楼主
收藏
已结贴
√
问题点数:20 回复次数:3
帮忙修改一个"List.h"以实现对任意数据类型的支持。
照书上编写好“List。h”。千辛万苦修改,才把它改对。
没想到最后书上给了一个问题,要就修改list.h以使得对任意数据类型的支持。
压缩包里有三个list.h,分别是对“char、int、struct”的支持。但怎么实现对任意的支持呢?
大家有没有什么好的思路?请教一个~
包里面的18-1,18-2,18-3都是测试程序,分别用list.h、lis2t.h、list3.h库函数编译。仁兄们帮忙看看。
List.rar
(3.34 KB)
搜索更多相关主题的帖子:
List
类型
数据
2010-06-23 23:07
举报帖子
使用道具
赠送鲜花
sxzjw
等 级:
论坛游民
帖 子:32
专家分:21
注 册:2010-5-23
第
2
楼
收藏
得分:0
怎么没有人帮下忙啊?我真的想不出来了。。
2010-06-24 12:37
举报帖子
使用道具
赠送鲜花
hnliji1107
等 级:
业余侠客
帖 子:53
专家分:216
注 册:2009-10-23
第
3
楼
收藏
得分:20
你可以把类型那一块定义成共用体啊,把所有你想到的变量类型都可以放到里面去
typedef struct data
{
char ch;
struct data *next;
}stdata;
typedef struct node{
union
{
char cdata;
int idata;
stdata *sdata
}data
struct node *next;
}ChainNode;
假如有:ChainNode *chNode;
这样通过引用chNode->data.cdata、chNode->data.idata、chNode->data.sdata->ch、chNode->data.sdata->next就可以使用任何变量了
注意,共用体中的变量一次只能使用一个。因为其中的变量是公用一块内存的。
[
本帖最后由 hnliji1107 于 2010-6-24 14:35 编辑
]
2010-06-24 14:31
举报帖子
使用道具
赠送鲜花
sxzjw
等 级:
论坛游民
帖 子:32
专家分:21
注 册:2010-5-23
第
4
楼
收藏
得分:0
楼上的方法不错啊~只要在list.h中定义就可以了。
试了一试,好用。
可是如果任意呢?不用预先存储什么数据类型,而是在测试函数m.c定义数据类型,并使list.h正确编译。这个怎么弄啊?
2010-06-24 23:14
举报帖子
使用道具
赠送鲜花
4
1/1页
1
快速回复:
帮忙修改一个"List.h"以实现对任意数据类型的支持。
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.018972 second(s), 9 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved