#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define ARRAYSIZE 3
#define BUFFERSIZE 32
int main(void)
{
char buffer[BUFFERSIZE] = "";
char* p[ARRAYSIZE] = { NULL };
for (size_t i = 0; i < ARRAYSIZE; i++) {
printf("Enter string %zu: ", i);
scanf("%s", buffer);
p[i] = malloc((strlen(buffer) + 1) * sizeof(char));
if (!p[i]) {
puts("malloc error");
return 1;
}
strcpy(p[i], buffer);
}
for (size_t i = 0; i < ARRAYSIZE; i++) {
puts(p[i]);
free(p[i]);
}
return 0;
}
/*
run:
Enter string 0: c
Enter string 1: c++
Enter string 2: java
c
c++
java
*/