C - 15 - Lettura matrice da file di tipo void

Поделиться
HTML-код
  • Опубликовано: 25 дек 2024

Комментарии • 37

  • @salvatoremontella3385
    @salvatoremontella3385 10 лет назад

    bravissimo...algoritmo semplice e chiaro .meglio del mio professore di fondamenti. complimenti

  • @kristiandragoti3671
    @kristiandragoti3671 3 года назад +1

    io non ho capito la fscanf nella funzione lettura che assegna dei valori a r e c... che valori gli assegna? perchè non hai fatto nessun ciclo ne niente quindi non capisco che valore venga caricato all interno di queste variabili... spero mi riesca a rispondere, grazie in anticipo

  • @brunomangia563
    @brunomangia563 10 лет назад

    Ti ringrazio mi sei stato molto utile. Distinti saluti

  • @al2642
    @al2642 10 лет назад

    Grazie mille, i tuoi video sono molto utili. Ne hai fatto anche uno in cui parli del passaggio di matrici alle funzionie alla differenza tra ad esempio m[3][3] e **m?

  • @cioti9481
    @cioti9481 11 лет назад +3

    perchè nelle void lettura, nella matrice, metti solo le colonne?

    • @carmhack
      @carmhack  11 лет назад +2

      Perché non hai bisogno di dargli anche la prima dimensione, essendo il nome (l'identificativo) della matrice un puntatore al primo elemento della matrice [e quindi la prima dimensione il compilatore se la può ricavare da solo].

    • @cioti9481
      @cioti9481 11 лет назад

      grazie mille ;)

  • @455853
    @455853 10 лет назад

    Scusa la domanda. Se io non conoscessi il numero di righe e colonne della matrice, come posso modificare il programma affinché mi fornisca queste due infos?

  • @MyCastolo
    @MyCastolo 11 лет назад

    ciao, ho creato il programma, l'ho controllato e non mi da errori, però quando inserisco il file da aprire, mi spunta questa finestre:
    "lettura matrice da file di tipo void.exe
    SI è VERIFICATO UN ERRORE IN LETTURA DA FILE DI TIPO VOID.EXE. L'APPLICAZIONE VERRà CHIUSA.
    potrebbe essersi verificata la perdità dei dati su cui si stava lavorando.
    segnalazione del problema a Microsoft.... ecc"
    questo problema mi è capitato anche con il programma della lezione precedente (14°), sapresti dirmi qual'è il problema? grazie :)

  • @emanuelroma10
    @emanuelroma10 4 года назад

    Un errore a tempo di esecuzione
    "corrupted size vs. prev_size
    Aborted (core dumped)"
    Che tipo di problema c'è? Il problema c'è solo quando la fclose non è commentata...

  • @KOZZAK81
    @KOZZAK81 12 лет назад

    ciao a me da un errore sulla riga del void ,cosa c'e scritto alla fine del void iniziale?? non si vede......e' oscurato lo schermo....dopo int *colonne? ...e devo mettere il ; per chiudere?

  • @massimilianocardillo5217
    @massimilianocardillo5217 10 лет назад

    ciao non capisco come sia possibile che il programma ti funzioni senza che tu abbia messo nel for i

  • @carmhack
    @carmhack  12 лет назад +1

    Perchè i primi due numeri li hai già letti e inseriti in altre variabili. I numeri invece li inserisci nella matrice!

  • @eliapetrosino1363
    @eliapetrosino1363 11 лет назад

    perchè nel "preview" del metodo righe e colonne vanno passate con l' * mentre quando richiamo il metodo vero e proprio devo passargliele con la &?

    • @carmhack
      @carmhack  11 лет назад +1

      L'operatore & passa l'indirizzo in memoria della variabile, l'operatore * preleva il valore. Rivediti bene i puntatori :)

  • @jonnysauro120
    @jonnysauro120 12 лет назад

    perchè sul mio pc con window 7 mi dice file non compilato?

  • @tommasomancini1768
    @tommasomancini1768 4 года назад

    bro a me dà segmentation fault e credo sia per i due puntatori *righe e *colonne posti uguale a r e c

  • @jonnysauro120
    @jonnysauro120 12 лет назад

    secondo me tu usi ubuntu e perciò quando mi sn trovato a riscrivere il tuo testo "su win 7" mi ha dato errore perchè il sistema operativo è diverso...mi sai dire che differenza c'è

  • @jhonmauriciobernalcalderon2664
    @jhonmauriciobernalcalderon2664 3 года назад

    Ciao, puoi pubblicare il codice? Grz

  • @puveggioso
    @puveggioso 10 лет назад

    Domanda stupida: Perchè non mettiamo la & prima di "file" quando facciamo la scanf nel main?

    • @DanieleSarcinella
      @DanieleSarcinella 9 лет назад +1

      puveggioso una stringa è già un puntatore, a differenza, ad esempio di un vettore di interi, quindi mettendo la & andremmo a creare un puntatore di puntatore

  • @KOZZAK81
    @KOZZAK81 12 лет назад

    e' esatto scriverlo cosi'?
    void lettura(char file[],int matrice[][C],int *righe, int*colonne);
    perche' mi da un errore su questa riga??

  • @KOZZAK81
    @KOZZAK81 12 лет назад

    al inizio mi da l'errore , subito prima del main... non sotto...

  • @jonnysauro120
    @jonnysauro120 12 лет назад

    secondo me tu usi ubunto mentre io win 7 mi sai dire che differenza ce nel testo

  • @carmhack
    @carmhack  12 лет назад

    Perchè il vettore in realtà è un puntatore (se vai ai prossimi tutorial capirai). Non ho bisogno di dargli il numero di righe perchè se dichiaro un array a, a è il puntatore al primo elemento del vettore. Quindi ho bisogno di passargli soltanto il numero di colonne per fargli capire quando deve saltare alla prossima riga. Spero sia chiaro xD

  • @carmhack
    @carmhack  12 лет назад

    Dipende da cosa devi fare. Il passaggio per valore spreca più memoria e passa una copia della variabile. Il passaggio per riferimento spreca meno memoria, passa l'indirizzo di memoria della variabile. In C di solito si utilizza sempre il passaggio per riferimento.

  • @carmhack
    @carmhack  12 лет назад

    Ok, quindi non ci sono problemi?

    • @gerardotautonico6773
      @gerardotautonico6773 3 года назад

      so che 8 anni fa è un po' tardi ma ti volevo chiedere di poter far vedere come salvi il file nella cartella perché io quando lo inserisco il programma non lo legge. Anch'io ho Codeblocks

  • @carmhack
    @carmhack  12 лет назад

    Perchè mai dovresti passarle per valore ? o.O

  • @nicopont98
    @nicopont98 6 лет назад

    ho fatto quasi lo stesso programma cambiando solo il nome del puntatore ma mi porta diversi errori potresti controllare per favore.
    #include
    #include
    void lettura( char file [],int matrice[][c],int*righe,int*colonne);
    int c;
    int main()
    {
    int matrice[R][C];
    int righe,colonne,i,j;
    char file[20];
    scanf("%s",file);
    lettura(file, matrice,&righe,&colonne);
    for(i=0;i

    • @antoniop9537
      @antoniop9537 5 лет назад

      @Nicola Pontillo
      devi dichiarare le costanti(variabili con valore fisso)sotto #include
      #define R 20 //(R è il nome-20 il valore)
      #define C 20 //(C è il nome-20 è il valore)
      e nelle due fscanf manca la prima virgola
      fscanf(p,"%d",&r);
      fscanf(p,"%d",&c);

  • @carmhack
    @carmhack  12 лет назад

    Se non mi fai vedere il codice, non ti so dire. Controlla bene se hai messo tutto. Comunque io lavoro su windows.

  • @KOZZAK81
    @KOZZAK81 12 лет назад

    niente , ho risolto tutto , il programma parte... solo che l'altra volta mi si bloccava e andava adesso una volta aperto il file non mi visualizza il contenuto... mi dice di premere un tasto per continuare... ci rinuncio

  • @carmhack
    @carmhack  12 лет назад

    Deve esserci un errore, evidentemente..

  • @jonnysauro120
    @jonnysauro120 12 лет назад

    Risolto

  • @massimilianocardillo5217
    @massimilianocardillo5217 10 лет назад

    scusa il commento era riferito al video precedente