Spojení řetězců C
Napsal: sob 28. lis 2009, 00:56
Zadání:Napište v jazyku C funkci char *spojeni(char *t1, char *t2), která vytvoří a vrátí textový řetězec, který vznikne spojením předaných textových řetězců. Ve funkci main pak tuto funkci otestujte... Povolené knihovny: stdio.h, stdlib.h.
Odpovídá to zadání? Není tam něco "nekalého"? Nějak si nejsem jistý, jestli můžu použít strcpy a strcat... Nerad bych pak vymýšlel nějaké šílené cykly uprostřed hodiny, až mi vyučující řekne, že se mu to nelíbí...
Kód: Vybrat vše
#include <stdio.h>
#include <stdlib.h>
char text1[100];
char text2[100];
int i,l;
char *spojeni(char *t1, char *t2)
{
void *text;
for(i=0; *(t1+i)!='\0'; i++)
{
}
for(l=0; *(t2+l)!='\0'; l++);
{
}
text=(char *)malloc(i+l);
strcpy(text, t1);
strcat(text, t2);
return(text);
}
int main()
{
printf("Zadejte prvni retezec: ");
scanf("%s", &text1);
printf("Zadejte druhy retezec: ");
scanf("%s", &text2);
printf("Spojeni \"%s\" a \"%s\" je \"%s\".", text1, text2, spojeni(text1, text2));
printf("\n");
printf("%d", i+l);
printf("\n\n");
system("pause");
return(0);
}