Come si fa a sapere l'indirizzo di memoria di una fwrite()?

di il
5 risposte

Come si fa a sapere l'indirizzo di memoria di una fwrite()?

Salve, sto usando delle fwrite () in dei cicli for -> size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)
e volevo sapere se fosse possibile conoscere l'indirizzo di memoria in cui ogni volta vado ad effettuare la fwrite qual'è...
grazie

5 Risposte

  • Re: Come si fa a sapere l'indirizzo di memoria di una fwrite()?

    size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)
    L'indirizzo di memoria da cui prelevi i dati ce l'hai già, è ptr.
    La posizione in cui vai a scrivere sul file invece è la posizione corrente, vedi
    Se vuoi conoscere qual è la posizione corrente puoi richiamare ftell()
  • Re: Come si fa a sapere l'indirizzo di memoria di una fwrite()?

    Ftell() funziona anche per il C o è solo per c++?
  • Re: Come si fa a sapere l'indirizzo di memoria di una fwrite()?

    http://www.tutorialspoint.com/c_standard_library/c_function_ftell.htm

    Ma non restituisce l' "indirizzo in memoria", semmai l'offset del file su disco.
  • Re: Come si fa a sapere l'indirizzo di memoria di una fwrite()?

    Ho fatto una fopen ("file.bin","wb") su un file e di volta in volta ci vado a scrivere dei file ma quando ho il contatore "cont==0" vorrei salvarmi l'indirizzo della prima wrirte che faccio sul file prima di andare a scrivere e poi fare le operazioni di incremento etc...
    Se avete soluzioni fatemi saere, tnx
    for (knows_offset2 = knows->knows_first; //moves trough the file
    knows_offset2 < knows->knows_first + knows->knows_n;
    knows_offset2++) {
    if (knows_map[knows_offset2] == person_offset) {
    if (count==0){keep_write=ftell(o1);}<----- qui vorrei salvarmi l'indirizzo di memoria in una variabile
    fwrite(&knows_offset, sizeof(unsigned long), 1, o1);
    count++;
    count_write++;
    printf("%u", knows_offset);
    break;
    }
  • Re: Come si fa a sapere l'indirizzo di memoria di una fwrite()?

    ho fatto una fopen ("file.bin","wb") su un file e di volta in volta ci vado a scrivere dei file ma quando ho il contatore "cont==0" vorrei salvarmi l'indirizzo della prima wrirte che faccio sul file prima di andare a scrivere e poi fare le operazioni di incremento etc...
    Se avete soluzioni fatemi saere, tnx
    spiega meglio. Magari illustra il problema con dello pseudo-codice.
Devi accedere o registrarti per scrivere nel forum
5 risposte