标题:虚心请教各位大牛,帮我解决一下问题cannot convert parameter 1 from 'str ...
取消只看楼主
tzr573796771
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2009-9-24
结帖率:100%
已结贴  问题点数:20 回复次数:2 
虚心请教各位大牛,帮我解决一下问题cannot convert parameter 1 from 'struct main::node *' to 'struc
题目是统计输入中所有单词的出现次数,采用二叉树的结构存储各个单词
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>
#define MAX 100

struct tnode
{
    char * word;
    int count;
    struct tnode *left;
    struct tnode *right;
};
/*在输入中得到单词*/
int getWord(char *word,int lim)
{
    int c,getch();
    void ungetch(int);//ungetch(int)是将多余的字符放回到输入中
    char *w=word;
    while(isspace(c=getch()))//isspace()函数跳过空白字符
    {};
    if(c!=EOF)
    {
        *w++=c;
    }
    if(!isalpha(c))//isalpha()函数识别字母
    {
        *w='\0';
        return c;
    }
    for(;--lim>0;w++)
    {
        if(!isalnum(*w=getch()))//isalnum()函数识别字母和数字
        {
            ungetch(*w);
            break;
        }
    }
    *w='\0';
    return word[0];
}
/*用二叉树的方法查找新单词的次数*/
struct tnode *binAddTree(struct tnode *p,char *w)
{
    int cond;
    if(p==NULL)
    {
        p=(struct tnode *)malloc(sizeof(struct tnode));
    //    p=talloc();
        p->word=w;
        p->left=NULL;
        p->right=NULL;
        p->count=1;
    }
    else if((cond=strcmp(w,p->word))==0)
    {
        p->count++;
    }
    else if(cond<0)
    {
        p->left=binAddTree(p->left,w);
    }
    else
    {
        p->right=binAddTree(p->right,w);
    }
    return p;
}
/*把节点打印出来*/
void printfTree(struct tnode *root)
{
    if(root!=NULL)
    {
        printfTree(root->left);
        printf("%s",root->word);
        printfTree(root->right);
    }
}

void main()
{
    struct node * root;
    char word[MAX];
    root=NULL;
    while(getWord(word,MAX)!=EOF)
    {
        if(isalpha(word[0]))
        {
            root=binAddTree(root,word);
        }
    }
    printfTree(root);
}


在这里root=binAddTree(root,word)出现错误:error C2664: 'binAddTree' : cannot convert parameter 1 from 'struct main::node *' to 'struct tnode *'
求教各位大牛,怎样解决啊!!!
搜索更多相关主题的帖子: convert main parameter node cannot 
2009-09-24 22:33
tzr573796771
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2009-9-24
得分:0 
回复 2楼 jig

感谢2楼的思路点拨,让我学会了用另外一种方法去解决问题!
再次感谢~~~
2009-09-26 17:29
tzr573796771
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2009-9-24
得分:0 
回复 3楼 jig
我太粗心了!!
呵呵,谢谢啦~~~
2009-09-26 17:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-286730-1-1.html




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

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