Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    25

    [C] File Di Testo

    PERCHE' nela funzione alloca(), che mi permette di allocare una matrice dinamicamente
    devo usare il doppio puntatre come il seguente programma?

    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>


    int conta(FILE *); /*conta quanti elementi sono presenti nel file*/
    int **alloca (int);

    main()
    {
    FILE *fpi, *fpu;
    int N;
    int **matrice;
    int valore; /*restituisco la dimensione della matrice dopo aver fatto la radice*/


    fpi = fopen ("C:\\LABORATORIO\\ingresso.txt", "r");

    if (fpi == NULL)
    printf ("Il file ingresso.txt non esiste!!!\n");
    else
    {
    fpu = fopen ("C:\\LABORATORIO\\uscita.txt", "w");
    N = conta (fpi);
    fprintf(fpu, "La dimensione del file ingresso.txt e' %d", N);

    valore = sqrt (N);
    fprintf(fpu, "\nLa radice quandrata di %d e' %d", N, valore);
    fprintf(fpu, "\n\nQuindi la matrice sara' di ordine %d*%d", valore, valore);

    matrice = alloca (valore);




    }
    }

    int conta (FILE *A)
    {
    int i, conta;

    i = 0;

    while (fscanf(A, "%d", &conta) != EOF)
    i = i + 1;

    return i;
    }

    int **alloca (int A)
    {
    int i;
    int **mat;

    mat = malloc (A * sizeof(int *));
    for (i=0; i<A; i++)
    mat[i] = malloc (A * sizeof (int));

    return mat;
    }

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Perche' stai allocando una matrice ...

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    25
    quindi significa che l'allocazione di una matrice consiste nell'allocare prima le n righe, e ogni riga a sua volta è un puntatore a un vettore colonna...... giusto?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Giusto ...

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    25
    se invece di allocare una matrice volessi allocare un vettore........
    avrò un puntatore a funzione oppure no?
    il ragionamento non è lo stesso?

  6. #6
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565
    Un puntatore a funzione??
    No, un semplice puntatore...
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    25
    quindi è totalmente diverso il ragionamento che si fa con il vettore rispetto alla matrice!!!

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Che intendi con "vettore" ... ? Mettiamoci d'accordo ...

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    25
    allora per vettore intendo:
    "una struttra dati omogenea dove il primo elemento parte da posizione 0".

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Se intendi un array ad una sola dimensione, allora avrai un solo puntatore.

    In ogni caso un puntatore a funzione, non serve in questi casi.

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