Δημοσιεύτηκε: 08 Απρ 2012, 15:50
Παρεμπιπτόντως, ο συνηθισμένος τρόπος υλοποίησης του 2ου παραδείγματος που παρέθεσες παραπάνω είναι έτσι...
- Μορφοποιημένος Κώδικας: Επιλογή όλων
-
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
// concatenates two strings
char *concat (const char *s1, const char *s2)
{
char *result = NULL;
result = malloc(strlen(s1) + strlen(s2) + 1);
if (result == NULL)
return NULL;
strcpy(result, s1);
strcat(result, s2);
return result;
}
int main(void)
{
char *p = NULL;
p = concat("Ena st", "ring.");
if ( p == NULL )
{
printf("Error: malloc failed in concat\n");
exit(EXIT_FAILURE);
}
p[1] = 'o';
puts(p);
free(p);
return 0;
}