Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di Tallid
    Registrato dal
    Jan 2009
    Messaggi
    76

    errore malloc liste c

    il seguente programma in C mi genera un errore...



    typedef struct elem_i {
    int val;
    struct elem_i *next;
    } Elem_int;

    typedef Elem_int *Lista_int;

    int main(int argc, char *argv[])
    {
    Lista_int l;
    l=malloc(sizeof(Lista_int));
    l->val=3;
    l->next->val=5;
    l->next->next->val=9;
    l->next->next->next=NULL;
    dividi(l);
    getchar();
    return 0;
    }

    void dividi(Lista_int l){
    Lista_int tmp;
    tmp=malloc(sizeof(Lista_int));
    }


    commentando le seguenti righe funziona:
    l->val=3;
    l->next->val=5;
    l->next->next->val=9;
    l->next->next->next=NULL;

    qualcuno sa spiegarmi il perchè? grazie

  2. #2
    che errore? in che riga (metti il codice tra i tag code e sistemalo indentato correttamente)?
    Hai già usato il debugger? Se no, usalo e controlla in che condizione restituisce l'errore.

  3. #3
    Utente di HTML.it L'avatar di Tallid
    Registrato dal
    Jan 2009
    Messaggi
    76
    l'errrore si genera quando faccio il malloc di temp, non posso usare debag sto usando dev c++

  4. #4
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    Come puoi assegnare valori a next ed a next next se non esistono?
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

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.