VS2010中 “ error:没有与参数列表匹配的函数strcmp实例”什么原因呀??下面为完整程序
完整程序#include<iostream>#include<cstring>structstudent{charname[20];intage;student*next...
完整程序
#include <iostream>
#include <cstring>
struct student{
char name[20];
int age;
student* next;};
int main()
{using namespace std;
student c={"haha",20,NULL};
student b={"hhhh",30,&c};
student a={"oooo",40,&b};
student* head=&a;
student* pointer=head;
for(;pointer;pointer=pointer->next)
{if(strcmp("hhhh",(*pointer).next)==0)
cout<<"hhhh's age:"<<(*pointer).age<<endl;
break;}
return 0;
} 展开
#include <iostream>
#include <cstring>
struct student{
char name[20];
int age;
student* next;};
int main()
{using namespace std;
student c={"haha",20,NULL};
student b={"hhhh",30,&c};
student a={"oooo",40,&b};
student* head=&a;
student* pointer=head;
for(;pointer;pointer=pointer->next)
{if(strcmp("hhhh",(*pointer).next)==0)
cout<<"hhhh's age:"<<(*pointer).age<<endl;
break;}
return 0;
} 展开
3个回答
展开全部
strcmp参数不对,
strcmp("hhhh",(*pointer).next)中的(*pointer).next改成",(*pointer).name ?
strcmp("hhhh",(*pointer).next)中的(*pointer).next改成",(*pointer).name ?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好,int strcmp(const char *s1,const char * s2); 说明你的调用if(strcmp("hhhh",(*pointer).next)==0有错,(*pointer).next不是char类型指针,你应该要写的是strcmp("hhhh",(*pointer).next.name)==0
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好,你把using namespace std;移动到#include <cstring>下面试试。
追问
谢谢啦!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询