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 關注
- 142 瀏覽
添加回答
舉報
0/150
提交
取消