diffère dans les niveaux d'indirection de 'int ()' (C)

Ce code me donne cette erreur, dont je ne comprends pas. Je ne peux même pas lancer le programme. Pouvez-vous m'aider à corriger cette erreur, s'il vous plaît? Si vous ne comprenez pas quelque chose dans le code, de le dire.

error C2040: 'CancelarPedido' : 'ppedido (ppedido)' diffère dans les niveaux d'indirection de 'int ()'

printf("\nIntroduza opcao:");
    scanf("%d",&opc);

    switch(opc){
        case 1: lista = NovoPedido(lista);break;
        case 2: lista = CancelarPedido(lista);break;
        case 3: printf("Falta implementar a funcao.");break;
        case 4: printf("Falta implementar a funcao.");break;
    }
    }while(opc!=5);

    return lista;
}


ppedido CancelarPedido(ppedido lista)
{
    ppedido actual, anterior = NULL;

    char id[5];

    actual = lista;

    if(lista == NULL)
        printf("\nNao ha pedidos na fila de espera...");
    else
    {
        printf("\nIntroduza o ID do pedido que pretende cancelar: ");
        scanf("%s", id);

        while(actual != NULL && ((strcmp(actual->id, id)) != 0)){
            anterior = actual;
            actual = actual->prox;
        }
        if(actual == NULL){
            printf("\nERRO - Nao existe nenhum pedido com o ID introduzido.");
            return lista;
        }
        if(anterior == NULL){
            lista = actual->prox;
            printf("\nPedido cancelado com sucesso...");
        }
        else{
            anterior->prox = actual->prox;
            printf("\nPedido cancelado com sucesso...");
        }
        free(actual);
        return lista;
    }
}
ce type est ppedido?
ppedido est un type de liste, si c'est ce que tu veux dire.
Ce type de données est la première pièce de votre code a déclaré le retour?
typedef struct pedido pedido, *ppedido; struct pedido{ char id[5]; int prioridade; int mesa, n_pratos; struct prato *prato[TAM]; ppedido prox; }; struct prato{ char id[5]; };
Difficile de répondre correctement sans un SSCCE.

OriginalL'auteur Marco | 2012-06-23