Visualizzazione dei risultati da 1 a 10 su 15

Visualizzazione discussione

  1. #1

    [C] Fare free in struttura/lista collegata tramite puntatori

    Salve a tutti, mi servirebbe una mano con una struttura legata da puntatori (anche se per come ce le hanno spiegate all'Università le chiamo liste).
    La struttura è la seguente
    codice:
    struct elemento{    int value;
        struct elemento *next;
    };
    Dopo aver definito tutte le value ecc. ecc. devo confrontare ogni singola value con un valore e cancellare tutte quelle che, dopo un incremento di 1, superano tale valore facendone il free della memoria e restituire il numero di elementi cancellati nel processo.
    Nel prototipo della funzione avevo pensato una cosa del genere
    codice:
    int increase_delete ( struct elemento **lista, int N, int soglia );
    (dove N è il numero di elementi contenuti nella lista)
    Per poi farla in questo modo
    codice:
    int increase_delete( struct elemento **lista, int N, int soglia){
        int count;
    
        while ( *lista != NULL && ++(*lista)->value <= soglia){
            *lista = (*lista)->next;
            count++;
        }
    
    //MANCA LA PARTE IN CUI LIBERO LA MEMORIA
    
    
        return (N-count);
    }
    Ritornando N-count come numero di elementi cancellati. Come posso fare a liberare tutti gli elementi oltre tale soglia?
    Ultima modifica di Rotang14; 04-02-2014 a 15:37

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.