Salve a tutti,
come da titolo mi serve qualche consiglio su come inizializzare un array di stringhe in maniera per così dire dinamica. Mi spiego: mi serve creare un array di stringhe da riempire tramite alcune stringhe passate da linea di comando... avendo mollato C anni fa mi trovo un po' in difficoltà dal momento che i miei ricordi sono confusi ma avevo pensato a una cosa del genere (che pero', ovviamente non funziona e va in segmentation fault appena inserisco la prima stringa).

codice:
#include <stdio.h>

int main()
{
	int i=0; //contatore
	int dim; //dimensione del vettore
	char string[15]; //stringa passata in input
	
	printf("Inserisci il numero di elementi su cui lavorare: ");
	scanf("%d", &dim);
	char chiavi_ricerca[dim]; //genera il vettore che conterrà le stringhe
	
	for (i; i < dim; i++) {
		printf("Inserisci la %d stringa da ricercare: \n");
		scanf("%s", string);
		chiavi_ricerca[i] = string;
		printf("%s",chiavi_ricerca[i]);
	} 
	
	return 0;
}
Se qualcuno puo' aiutarmi a capire dove sbaglio e come correggermi, gliene sarei grato