C言語において個数も長さも未定の文字列を扱うために
char **name;
というのを使おうとしているのですがうまくいきません。
どうすればよいのでしょうか?

int main()
{
char *str1 = "aaaa";  //とりあえず2つ
char *str2 = "bbbb";
char **name;

for(i=0; *str1!='\0'; i++){
 name[0][i] = *str1;
 str1++;
}

for(i=0; *str2!='\0'; i++){
 name[1][i] = *str2;
 str2++;
}

実行するとメモリアクセスエラーが発生します。