Интересная задачка на C.
Есть задачка. Вместо точек нужно написать свои дание. В другом месте редактировать код нельзя. После запуска программы мы должны получить результат RES: Hello
код:
пытался решить, сделал так:
Может кто подскажет как решить?)
код:
...
...my_copyStr(...)
{
...
}
int main(int argc, char *arcv[ ])
{
char *zsStrHello = "Hello";
char *zsResStr =0;
my_copyStr(...);
printf("RES: %s",zsResStr);
free(zsResStr);
return 0;
}
пытался решить, сделал так:
#include <string.h>
my_copyStr(char **str1, char **str2)
{
str1 = (malloc((strlen(str2)+1) * sizeof(char));
strncpy(str1,str2,strlen(str1));
}
int main(int argc, char *arcv[ ])
{
char *zsStrHello = "Hello";
char *zsResStr =0;
my_copyStr(zsResStr,zsStrHello);
printf("RES: %s",zsResStr);
free(zsResStr);
return 0;
}
не работает, результат NULL.Может кто подскажет как решить?)
6 комментариев
, и если решите неправильно — будет показан правильной результат.