Nevíte někdo, proč to prosím nejede?
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
char *najdi(char *zdroj, char *prvni)
{
int i, i2, j;
for (i = (int)strlen(zdroj)-(int)strlen(prvni); i >= 0; i--) {
for (j = 0, i2 = i;prvni[j] != '\0'; j++, i2++) {
if (prvni[j] == zdroj[i2]) {
if (prvni[j+1] == '\0')
return &zdroj[i];
}
else break;
}
}
return NULL;
}
int main()
{
char *zdroj = "ababcbaa";
char *prvni = "a";
char *druhy = "b";
printf("Je dan textovy retezec: %s ", zdroj);
printf("\nHledame podretezec od %s do %s ", prvni, druhy);
printf("\n\nPrvni nejblizsi slovo odpovidajici hledanemu je: %s %s\n\n", najdi(zdroj, prvni));
return 0;
}