PDA

View Full Version : مقایسه آرایه دو بعدی با یک بعدی



Rezvane.R
یک شنبه 23 تیر 1392, 20:05 عصر
من می خوام یه آرایه از نوع char رو با یه آرایه دوبعدی از نوع char مقایسه کنم .
نمی دونم چه جوری .
کدشو این جوری نوشتم ولی جواب نمی ده .


void keywords1() {
bool flag=true;
for (int i=0;i<41 && flag;i++)
for (int j=0;j<10;j++){
if (q[i]!=keywords[i][j]) {

flag=false;
break;
}
}

مصطفی ساتکی
دوشنبه 24 تیر 1392, 20:42 عصر
من می خوام یه آرایه از نوع char رو با یه آرایه دوبعدی از نوع char مقایسه کنم .
نمی دونم چه جوری .
کدشو این جوری نوشتم ولی جواب نمی ده .


void keywords1() {
bool flag=true;
for (int i=0;i<41 && flag;i++)
for (int j=0;j<10;j++){
if (q[i]!=keywords[i][j]) {

flag=false;
break;
}
}

اگر بخاید یک آرایه تو بعدی از نوع char رو با یک آرایه یک بعدی مقایسه نظیر به نظیر کنید می تونید از تابع strncmp به صورت زیر استفاده کنید.

const int m=6;
const int n=4;
const int z= m*n;
char a[m][n];
char b[z];
for (int i=0; i < m;i++)
for (int j=0; j < n;j++)
{

b[i*n +j] = 48+i*n+j;
a[i][j] = b[i*n +j];

}
cout <<strncmp((char*)a,b,z) << endl;