// an example of an array of strings #include #include int string_length(char * my_string) { int counter = 0; while(1) { if (my_string[counter] != 0) { counter++; } else { break; } } return counter; } char * copy_string(char * input) { int length = string_length(input); char * result = (char *) malloc(sizeof(char) * (length + 1)); int i; for (i = 0; i <= length; i++) { result[i] = input[i]; } return result; } int main() { // create and initialize an array of strings. char ** a = (char **) malloc(sizeof(char*) * 3); a[0] = copy_string("yes"); a[1] = copy_string("no"); a[2] = copy_string("maybe"); printf("a[0] = %s\n", a[0]); printf("a[1] = %s\n", a[1]); printf("a[2] = %s\n", a[2]); }