guarda:

struct list
{
int value;
struct list* nextPtr;
};
..
main()
{
..
struct list* listPtr;
..
preInsert(&listPtr,value);
..
preInsert(struct list** ptrPtr, int value) //inserisce un elemento
{

struct list* tmpPtr;

tmpPtr=*ptrPtr;
*ptrPtr=(struct list*)malloc(sizeof(struct list));
(*ptrPtr)->value=value;
(*ptrPtr)->nextPtr=tmpPtr;
}

scritto al volo.. lol che casino con il tab..
ciao