cannot convert parameter 1 from 'int' to 'int *[]'?#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;}
3 回答
至尊宝的传说
TA贡献1789条经验 获得超10个赞
你的haha() hehe()函数都要实现什么功能啊,既然是void 为什么要有返回值?
函数参数类型也不正确!
改成:void haha(int s[])
PIPIONE
TA贡献1829条经验 获得超9个赞
void haha(int*s[])
改为
void haha(int *s) 或 void haha(int s[])
(因为int *s[] 为指针数组)
另外
haha,hehe函数都没有返回值。
慕姐8265434
TA贡献1813条经验 获得超2个赞
C++是一个强类型语言。对类型的要求很严格。
第一个调用haha(a),类型明显不匹配。你传入的是一个int*类型的地址,但你的haha原型接收的参数是一个int *[]其实是一个int **类型。肯定不匹配。
第个调用hehe(a),同样hehe接收的参数是一个char *,你传的是int*,当然可以通过强制转换,但你的hehe函数意义不太。strlen可能返回各种结果!
- 3 回答
- 0 关注
- 75 浏览
添加回答
举报
0/150
提交
取消