Comment initialiser un pointeur sur une structure en C?

Compte tenu de cette structure:

struct PipeShm
{
    int init;
    int flag;
    sem_t *mutex;
    char * ptr1;
    char * ptr2;
    int status1;
    int status2;
    int semaphoreFlag;

};

Qui fonctionne très bien:

static struct PipeShm myPipe = { .init = 0 , .flag = FALSE , .mutex = NULL , 
        .ptr1 = NULL , .ptr2 = NULL , .status1 = -10 , .status2 = -10 , 
        .semaphoreFlag = FALSE };

Mais quand je déclare static struct PipeShm * myPipe , cela ne fonctionne pas , je suppose que j'avais besoin de l'initialiser avec l'opérateur ->mais comment?

static struct PipeShm * myPipe = {.init = 0 , .flag = FALSE , .mutex = NULL , 
        .ptr1 = NULL , .ptr2 = NULL , .status1 = -10 , .status2 = -10 , 
        .semaphoreFlag = FALSE };

Est-il possible de déclarer un pointeur sur une struct et l'utilisation d'initialisation avec elle?

source d'informationauteur ron