C++中,出现cannot convert parameter 1 from 'char [10]' to 'char'怎么办?
if(tra[i].begain==exa.begain)n++;structtrain{charnum[10];charbegain[10];};赋初值trainexa...
if (tra[i].begain ==exa.begain)
n++;
struct train
{
char num[10];
char begain[10];
};
赋初值train exa={0,0};
完了就提示字符数组跟字符这样了.... 明明都是一个struct下面的为什么会这样...在线等
tra[i].begain 赋值 北京
exa.begain 能赋值 北京 么? 展开
n++;
struct train
{
char num[10];
char begain[10];
};
赋初值train exa={0,0};
完了就提示字符数组跟字符这样了.... 明明都是一个struct下面的为什么会这样...在线等
tra[i].begain 赋值 北京
exa.begain 能赋值 北京 么? 展开
5个回答
展开全部
if(tra[i].begain ==exa.begain)
改成
if(strcmp(tra[i].begain, exa,begain)==0)
因为你的begain代表的是数组地址
而你是要比较数组中的内容, 基础不扎实!
改成
if(strcmp(tra[i].begain, exa,begain)==0)
因为你的begain代表的是数组地址
而你是要比较数组中的内容, 基础不扎实!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你定义的结构包含的是两个数组;
赋值的时候赋值的是两个整型。类型不匹配。
赋值的时候赋值的是两个整型。类型不匹配。
追问
怪我没打全..
之后我继续
cin<<exa.begain
输入的是两个汉字
然后if
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
struct train
{
char* num ;
char* begain ;
};
void main(void)
{
train exa,tra;
exa.begain = "北京";
tra.begain = "北京";
if(exa.begain == tra.begain)
{
cout << "11111111111111111111111111111" << endl;
}
}
// 就这样``perfect
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
train exa={"0","0"}; 试试看?
另外 应该是 cin>>exa.begain; 吧
另外 应该是 cin>>exa.begain; 吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
train exa={{0},{0}};
追问
还是提示 类型不一致
追答
我的环境编译能过去啊。。你的分号达成中文了吧train exa={0,0};
这个是中文的分号 还有你的结构体结束也是中文的分号
可以啊 strcpy(exa.begain , "北京");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询