Ah, agora entendi com clareza. A declaração de um vetor de ponteiros pode ser feita da seguinte forma: char *vetor[4];
Este é um vetor que contém 4 ponteiros.
Até o momento, estes ponteiros podem estar apontando para um lugar qualquer da memória, portanto, ao utilizar alguns dos ponteiros, inicialmente é necessário alocar memória para os mesmos.
Isto é feito com a função 'malloc' (disponível na biblioteca 'stdlib.h').
Um exemplo.
Você deseja fazer o ponteiro vetor[1] apontar para uma string qualquer. Consideremos o tamanho máximo da string sendo 29 caracteres mais o caractere nulo '\ 0'.
#include <stdio.h>
#include <stdlib.h>
#define MAXCARACTERES 30
int main(){
char *vetor[4];
vetor[1] = malloc(MAXCARACTERES*sizeof(char));
fgets(vetor[1], MAXCARACTERES-1, stdin);
free(vetor[1]);
return(0);
} Interpretando... É feita a declaração do vetor de ponteiros, contendo 4 ponteiros. Antes de se utilizar um dos ponteiros, é necessário fazer a 'reserva' de memória. Não queremos colocar uma string num local desconhecido da memória, isto pode causar problemas dos mais simples aos mais sérios. Para isto, utiliza-se a função 'malloc' (Há outras funções de alocação dinâmica, mas fiquemos com esta por hora). Esta função recebe como parâmetro o número de bytes a ser reservado, portanto, é multiplicado o máximo de caracteres da string pelo tamanho de bytes que um caractere ocupa (nunca coloque este valor diretamente, sempre tilize o sizeof, pois o tamanho deste valor varia em alguns sistemas). A 'malloc' irá retornar um ponteiro void, que pode ser atribuido á qualquer ponteiro, e neste caso, atribuimos á vetor[1]. Agora, vetor[1] aponta para um endereço na memória que possui MAXCARACTERES*sizeof(char) livres á sua frente, prontos para receber a string. Utilizo o fgets para evitar o overflow; o endereço da string será o apontado por vetor[1], a quantidade de caracteres máximas será MAXCARACTERES-1 (deixa-se espaço para o '\ 0', que o fgets coloca automaticamente), e o stream-fonte será stdin (o teclado). Quando terminamos de utilizar aquele espaço na memória, temos que liberá-lo (não necessáriamente temos que fazer isto, pois o computador limpa a memória ao ser desligado. Porém, isto é uma boa prática, pois recupera espaço na memória que poderá ser usado por outras aplicações). Para liberá-lo, utiliza-se a função 'free' (também disponível em 'stdlib.h'). Foi mal o texto grande, espero ter ajudado.