为什么老出现cannot convert parameter 1 from 'int' to 'int *[]'
#include<iostream.h>#include<string.h>voidhaha(int*s[]){inti;for(i=0;i<=5;i++)cout<<"...
#include<iostream.h>
#include<string.h>
void haha(int*s[])
{
int i;
for(i=0;i<=5;i++)
cout<<"s[i] ";
}
void hehe(char*s)
{
int n;
n=strlen(s);
}
void main()
{
cout<<"输入5个整数";
int a[5];
int i,j;
i=haha(a);
j=hehe(a);
cout<<i<<j<<endl;
} 展开
#include<string.h>
void haha(int*s[])
{
int i;
for(i=0;i<=5;i++)
cout<<"s[i] ";
}
void hehe(char*s)
{
int n;
n=strlen(s);
}
void main()
{
cout<<"输入5个整数";
int a[5];
int i,j;
i=haha(a);
j=hehe(a);
cout<<i<<j<<endl;
} 展开
5个回答
展开全部
void haha(int*s[])
改为
void haha(int *s) 或 void haha(int s[])
(因为int *s[] 为指针数组)
另外
haha,hehe函数都没有返回值。
改为
void haha(int *s) 或 void haha(int s[])
(因为int *s[] 为指针数组)
另外
haha,hehe函数都没有返回值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C++是一个强类型语言。对类型的要求很严格。
第一个调用haha(a),类型明显不匹配。你传入的是一个int*类型的地址,但你的haha原型接收的参数是一个int *[]其实是一个int **类型。肯定不匹配。
第个调用hehe(a),同样hehe接收的参数是一个char *,你传的是int*,当然可以通过强制转换,但你的hehe函数意义不太。strlen可能返回各种结果!
第一个调用haha(a),类型明显不匹配。你传入的是一个int*类型的地址,但你的haha原型接收的参数是一个int *[]其实是一个int **类型。肯定不匹配。
第个调用hehe(a),同样hehe接收的参数是一个char *,你传的是int*,当然可以通过强制转换,但你的hehe函数意义不太。strlen可能返回各种结果!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
void haha(int *s) 或 void haha(int s[])
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-10-06
展开全部
你部机中毒咯,找人修咯。
追问
我用三台机器都是这样
我用三台机器都是这样
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询