Visualizzazione dei risultati da 1 a 9 su 9

Discussione: [C] preblema di stack

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    C'è un errore già all'inizio:

    int n_pesi=0
    ;
    pesi=(struct PesiSpecifici*)malloc(n_pesi*sizeof(struct PesiSpecifici));

    Non stai allocando lo spazio...

    Il resto non l'ho guardato.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  2. #2
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Quote Originariamente inviata da Alex'87 Visualizza il messaggio
    C'è un errore già all'inizio:

    int n_pesi=0
    ;
    pesi=(struct PesiSpecifici*)malloc(n_pesi*sizeof(struct PesiSpecifici));

    Non stai allocando lo spazio...

    Il resto non l'ho guardato.
    C'è una realloc nella funzione per quello.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  3. #3
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Quote Originariamente inviata da Scara95 Visualizza il messaggio
    C'è una realloc nella funzione per quello.
    ups, non ci avevo fatto caso (certo che fare una malloc a vuoto è abbastanza inutile )
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  4. #4
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Quote Originariamente inviata da Alex'87 Visualizza il messaggio
    ups, non ci avevo fatto caso (certo che fare una malloc a vuoto è abbastanza inutile )
    Va aggiunto che quel codice non tiene conto dei fatti che:
    • le modifiche a pesi (realloc potrebbe copiare i dati in un nuovo spazio di memoria) e n_pesi non si riflettono nel main
    • non è necessario memorizzare i dati
    • malloc e realloc potrebbero restiruire NULL (vabbè, questo è spesso ignorato)
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

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 © 2026 vBulletin Solutions, Inc. All rights reserved.