C语言实现一个容器
1. 试用C语言实现一个容器,可以装字符串、字符、数字、二进制数据, 其中每一个被装进的数据要附带一个唯一识别码。
int put_char(List *list, unsigned int uid, char c);
int put_string(List *list, unsigned int uid, char *str);
int put_integer(List *list, unsigned int uid, int num);
int put_binary(List *list, unsigned int uid, unsigned char* data, unsigned int data_len);
说明:主要考核是C语言结构体和链表指针方面的基础知识,请不要用C++的map、vector等已经做好的容器来实现。
2. 能遍历容器内有多少个数据节点,根据uid删除节点,打印节点。
Unsigned int getNodeNum(List *list);
Int delete_node(List *list, unsigned int uid);
Int print_node(List *list, unsigned int uid);
Void delete_all_nodes(List *list);
题目陈述如上。
如果用链表来实现的话,不同存储类型的结构是不一样的,比如存储字符的节点和存储二进制数据的节点的结构是不一样的。这样的话链接的指针类型就无法定义。请问板上高手有什么解决方法?