Visualizzazione dei risultati da 1 a 10 su 17

Visualizzazione discussione

  1. #1

    Allocazione dinamica della memoria in C

    Non riesco a capire il motivo per cui nell'esecuzione mi dia un errore del tipo "realloc() invalid next size".
    É abbastanza urgente, grazie in anticipo

    codice:
    #include<stdio.h>
    #include<stdlib.h>
    int main(void){
      int i = 0, j;
      double *a, *b;
      a = (double *)malloc(1*sizeof(double));
      b = (double *)malloc(1*sizeof(double));
      FILE *fp;
      if ((fp=fopen("file.dat", "r"))==NULL){
        printf("Errore nell'apertura del file.\n");
        exit(EXIT_FAILURE);
      }
      while(!feof(fp)){
        fscanf(fp,"%lf %lf", (a+i), (b+i));
        i++;
        a = (double *)realloc(a, i*sizeof(double));
        b = (double *)realloc(b, i*sizeof(double));
      }
      for(j=0; j<i; j++){
        printf("%.8lf %.8lf\n",*(a+j), *(b+j));
      }
    }
    Ultima modifica di MItaly; 23-11-2015 a 14:24

Tag per questa discussione

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.