我无法将char数组传递给函数。每当我尝试这样做时,都会显示以下错误:
错误1错误C2664:' void打印(字符)' :无法从' char [22]'转换参数1到' char'
我不确定问题是什么。一些建议会很棒。
#include <iostream>
using namespace std;
void Print(char);
int main(){
char arr1[] = { "Hello how are you? / " };
Print(arr1);
}
void Print(char arr[]){
for (char i = 0; i != '/'; i++)
{
cout << arr[i] << endl;
}
}
答案 0 :(得分:3)
1. Print
的功能声明和定义不匹配。根据声明,Print
接受char
作为其论点,这就是编译器抱怨的原因。将声明更改为
void Print(char[]);
2. for (char i = 0; i != '/'; i++)
,条件i != '/'
没有检查char数组的元素,它应该是arr[i] != '/'
。
答案 1 :(得分:1)
这个程序有效。
{{1}}
我觉得while语句比for语句更好,你需要使用arr作为指针。