Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 32

Discussione: [C] fwrite error?

  1. #1
    Utente bannato
    Registrato dal
    Feb 2004
    Messaggi
    2,803

    [C] fwrite error?

    codice:
    #include<stdio.h>
    #include<stdlib.h>
    
    int main (){
        FILE *file1;
        FILE *file2;
        FILE *file3;
        
        char curr;
        if (
            ((file1=fopen ("file1.txt", "r"))==NULL)||
            ((file3=fopen ("file2.txt", "r"))==NULL)||
            ((file3=fopen("file3.txt", "w"))==NULL))
            printf ("file not found");
        
        else {
             
             while (!feof(file1)||!feof(file2)){
                   fread(&curr, sizeof(char),1,file1);
                   fwrite(&curr, sizeof(char),1,file3);
                   fread(&curr, sizeof(char),1,file2);
                   fwrite(&curr, sizeof(char), 1, file3);
                   
                   }
    
             }    
        system ("PAUSE");return 0;
        }

    semplice esercizio che dovrebbe creare un file3.txt con i caratteri presi in alternanza da file1 e file2..

    che problema ha?


    ps: dato che sono qui se qualcuno può spiegarmi in termini pratici perchè si usa typedef struct per inizializzare una struttura e non semplicemente struct gliene sarei grato

  2. #2
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Beh, se vuoi scrivere l'indirizzo della locazione memoria di curr direi nessuno.
    Se però vuoi scrivere il contenuto di curr, direi che c'è un & di troppo.
    codice:
    fwrite(&curr, sizeof(char),1,file3);
    Riguardo alle struct C. Probabilmente è per risparmiarsi la solfa di scrivere ogni volta "struct qualcosa" quando si deve usare.
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  3. #3
    Utente bannato
    Registrato dal
    Feb 2004
    Messaggi
    2,803
    devC console errori

    codice:
       initializing argument 1 of `size_t fwrite(const void*, size_t, size_t, FILE*)'


    ps: per le struct non ho ben capito, potresti spiegarti meglio?quando devo usare una struttura inizializzata ad esempio typedef struct nodo{..}nodo; la richiamo solo con "nodo"?? non penso..o si?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non usi file2 ma due volte file3 ... fai attenzione ...

    La typedef non serve ad inizializzare la struttura ma a creare un nuovo "tipo di dato" ...

    Non andare a caso ... non va bene per programmare ... usa un buon libro ...

    http://www.disi.unige.it/person/DoderoG/LP/typed.htm
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da shodan
    ... direi che c'è un & di troppo.
    In che senso ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    Utente bannato
    Registrato dal
    Feb 2004
    Messaggi
    2,803
    Originariamente inviato da oregon
    Non usi file2 ma due volte file3 ... fai attenzione ...

    scusami dove?
    file1 e file2 devono scrivere entrambi in file3..a me sembra di aver scritto questo



    ho editato il codice, c'era una printf di troppo e una fwrite commentata

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da ant_alt
    scusami dove?
    file1 e file2 devono scrivere entrambi in file3..a me sembra di aver scritto questo
    Controlla attentamente le fopen che hai scritto ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Originariamente inviato da oregon
    In che senso ?
    Lasciamo perdere...
    ...ho avuto la pessima idea di postare dopo un'allegra serata a birra. Meglio che vada a
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da shodan
    Lasciamo perdere...
    ...ho avuto la pessima idea di postare dopo un'allegra serata a birra. Meglio che vada a
    Ora ho capito ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    Utente bannato
    Registrato dal
    Feb 2004
    Messaggi
    2,803
    Originariamente inviato da oregon
    Controlla attentamente le fopen che hai scritto ...
    ho corretto ma l'errore che ho postato sopra ovviamente rimane

    ps: e scusami se ti faccio perdere tempo con errori di distrazione

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.