Показать сообщение отдельно

  #9  
Старый 01.07.2007, 11:03
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию

вот переделал сколько смог, но всё равно не работает собака серая!
я с массивом ms уже замучался. надо чтобы он был массивом указателей char *ms
и в него сохранялись указатели на первые вхождения подстроки в строку, т.е.
адреса на три буквы U, за которыми следуют буквы C и K.
В учебнике написано что для массивов указателей вообще не выделяется память, и как тогда быть?
Как наполнить массив указателями?
Постучитесь кто-нить в аську 268238560, объясните, иначе я на экзамен не попаду, очень нужен дельный совет!
По сути, могу даже яндекс деньгами рассчитаться за помощь, в разумных пределах конечно.

#include "stdio.h"


char * strf(char *s1, char *s2)
{
for (int m1=0;s1[m1]!='\0';m1++);
for (int m2=0;s2[m2]!='\0';m2++);

int ms[5];
int counter=0;
int ps=0;
for(int i=0;i<m1;i++)
{

if(s1[i] == s2[0])
{
int start = i;
for(int j=0;j<m2;j++)
{
if(s1[j+i] != s2[j])
ps = 1;
}

if(ps == 0)
ms[counter] = start;

}

}

return (int)ms[5];
}


void main()
{
char s1[] = "Terriuckble Fucker Stuckpidly";
char s2[] = "uck";


strf(&s1[0],&s2[0]);

for(int l=0;l<5;l++)
printf("%d \n", ms[l]);

}
 
Ответить с цитированием