| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 514 人关注过本帖
标题:简单又短的链表操作(帮忙改个错)
只看楼主 加入收藏
晨曦的朝阳
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2008-1-24
收藏
 问题点数:0 回复次数:2 
简单又短的链表操作(帮忙改个错)
#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
class code
{
      private:
              char character[20];
              code *str_ptr;
      public:
             code(const char* init_char="",code* init_ptr=NULL)
                 {
                        strcpy(character,init_char);
                        str_ptr=init_ptr;
                 }
             char* get_char()
                 {
                            return character;
                 }
             code* get_ptr()
                 {
                            return str_ptr;
                 }
             const code* get_ptr()const
                 {
                         return str_ptr;
                 }
             void set_char(const char* &init_char)
                 {
                         strcpy(character,init_char);
                 }
             void set_ptr(code* init_ptr)
                 {
                         str_ptr=init_ptr;
                 }
             int length(const code* source);
             void head_insert(code* &head_ptr,const char* &entry);
             void print_code(const code* &head_ptr);
};
int code::length(const code* source)//计算链表的长度
{
    const code* cursor;
    int count=0;
    for(cursor=source;cursor!=NULL;cursor=cursor->get_ptr())
        ++count;
    return count;
}
void code::head_insert(code* &head_ptr,const char* &entry)//在链表的开头插入数据
{
     head_ptr=new code(entry,head_ptr);
}
void code::print_code(const code* &head_ptr)//输出链表
{
     const code* cursor;
     for(cursor=head_ptr;cursor!=NULL;cursor=cursor->get_ptr())
         cout<<setw(5)<<cursor->get_char();//这里有问题
}
int main()
{
    code os,*ptr=&os;
    char strings[5][20];
    for(int i=0;i<5;i++)
        {
            cout<<"strings["<<i<<"]=";
            cin>>strings[i];
            os.head_insert(ptr,strings[i]);//这里有问题
        }
    cout<<"cout:"<<os.length(ptr)<<endl;//这里有问题
    cout<<"strings:";
    os.print_code();
    return 0;
}
刚看了C++的链表,就自己弄了一个最简单的链表操作,但出现了两三处错误,就是修改不过来,请各位大侠们帮帮忙,不胜感激...
搜索更多相关主题的帖子: 链表 
2008-04-29 17:39
雪城白鸟
Rank: 1
来 自:吉林
等 级:新手上路
帖 子:22
专家分:0
注 册:2008-3-15
收藏
得分:0 
你还是应该多看下链表,在理解上还是差很多
2008-04-29 19:28
晨曦的朝阳
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2008-1-24
收藏
得分:0 
以前弄过C的链表,现在弄C++的,感觉变了好多,复杂了不少.
这个程序不能改改吗?楼上的,当帮我个忙吧,谢谢啦
2008-04-29 19:46
快速回复:简单又短的链表操作(帮忙改个错)
数据加载中...
 
   



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

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