Visualizzazione dei risultati da 1 a 10 su 13

Visualizzazione discussione

  1. #1

    Problema errore di segmentazione [C]

    Salve
    mi potreste aiutare a trovare l'errore di segmentazione in questo programma?
    Non so se il problema è dovuto alla realloc...

    Grazie


    codice:
    #include <stdio.h>
    #include <stdlib.h>
    #define DIM 5
    
    
    /*Realizzare un programma che permetta di memorizzare i voti di una disciplina. 
    Non conoscendo a priori la quantita' di valutazioni il programma inizialmente allochera' 
    in modo dinamico lo spazio sufficiente per 5 voti. 
    Successivamente, quando lo spazio si esaurira', verra' allungato lo spazio precedente 
    in modo da poter inserire altre 5 valutazioni. */
    
    
    main(){
        int cont=0,n=0,continua=1;
        int *ptrvoti=NULL,*app=NULL;
    
    
        ptrvoti = (int*)malloc(sizeof(int)*5);
        if(ptrvoti==NULL){
            printf("ERRORE\n");
            return;
        }
    
    
        app=ptrvoti;
    
    
        while(cont<DIM && continua==1){
            printf("Vuoi continuare ad inserire voti? (1 per continuare, 0 per terminare) \n");
            scanf("%d", & continua);
            if(continua==1){
                printf("inserisci voto \n");
                scanf("%d", ptrvoti);
                n++;
                ptrvoti++;
            }
            else if(continua==0){
                break;
            }
            else{
                printf("ERRORE\n");
                return;
            }
            if(n==5){
                ptrvoti = (int*)realloc(ptrvoti,sizeof(int)*(5+DIM));
                cont=0;
            }
            cont++;
        }
        ptrvoti=app;
        for(cont=0;cont<n;cont++){
            printf("%d ", *ptrvoti);
            ptrvoti++;
        }
    }
    Ultima modifica di Thunder2410; 08-05-2015 a 19:11

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.