PDA

View Full Version : سوال: پیدا کردن یک رشته در یک آرایه دو بعدی!



soheilajoon
جمعه 17 خرداد 1387, 10:50 صبح
سلام.
من دارم برنامه Edit داس رو به زبان C می نویسم.
متن من توی یک آرایه دو بعدی ذخیره شده , حالا من می خوام یک رشته رو که کاربر وارد میکنه از توی این آرایه پیدا کنم ولی هر کاری می کنم نمی شه! :افسرده:
رشته من توی [ text[200][78 ذخیره شده :


for(i=0 ; i<200 ; i++)
for(j=0 ; j<=78 ; j++)
text[i][j]=key


کسی می تونه به من کمک کنه؟
ممنون میشم.

A.S.Roma
جمعه 17 خرداد 1387, 10:59 صبح
سلام

بهتر بود از لینک لیست استفاده می کردی .
یه آرایه دینامیک به اندازه طول رشته ای که می خواهی پیداش کنی بساز . و تو اون آرایه دو بعدیه به اولین حرف از رشته ای که می خوای پیداش کنی رسیدی به اندازه طول رشته کپی کن تو آرایه دینامیکه بعد با هم مقایسشون کن .

soheilajoon
جمعه 17 خرداد 1387, 11:02 صبح
میشه یه کد کوچولو از این برام بنویسید تا بیشتر کمکم کنه.
ممنون.

A.S.Roma
جمعه 17 خرداد 1387, 11:39 صبح
مثلا چنین چیزی :


int Find (char t[][70] ,char *str int len=200)
{
char *temp;
temp = (char *)malloc((strlen(str)+1)*sizeof(char));
for(int i=0;i<len;i++)
for(int j=0;j<70;j++)
if(t[i][j]==str[0])
{
for(int k=0;k<strlen(str);k++)
temp [k] = t[i][j+k];
if(strcmp(temp,str)==0)
......
......
..
return 1; // Found !
}
}