이 내 코드입니다 :char에서 char로 변환 할 때 오류가 발생하는 이유는 무엇입니까?
#include <iostream>
using namespace std;
bool funkcja (char * a[3][7], char * b[7]);
int main()
{
char T[3][7]={{'A', 'L', 'A', 'M','A', 'k', 'o'},
{'M', 'A','M','K','O','T','A'},
{'T', 'E','Q','U','I','L','A'}};
char tab[7]={ 'A', 'L', 'A', 'M','A', 'k', 'o' };
cout<<funkcja(T, tab)<<endl;
return 0;
}
bool funkcja (char * a[3][7], char * b[7])
{
int licznik=0;
for (int i=0;i<3;i++)
{
for (int j=0; j<7;j++)
{
if (a[i][j]==b[j])
{
licznik++;
if (licznik==7) return true;
}
else {
licznik=0;
}
}
licznik=0;
}
return false;
}
그리고이 구축을 위해 노력하고있을 때 내가 얻을 :
[Error] cannot convert 'char (*)[7]' to 'char* (*)[7]' for argument '1' to 'bool funkcja(char* (*)[7], char**)'
에서 자신의 크기를 전달할 수'*'이 함수에 전달하는 인수의 각각에서. –
'funkcja' 함수는'char *'의 2D 배열을 필요로합니다. 당신은 그것에게'char'의 2D 배열을 주려고합니다. 'char'에서'char *'로의이 변환은 허용되지 않습니다. – DeiDei
참고로 코드의 엔터티에 영어 이외의 이름을 지정하는 것은 매우 나쁜 스타일입니다. 나보다 그 습관을 빨리 없애는 것이 좋습니다. –