Pages: [1]   Go Down
Print
Author Topic: scrivere su file C  (Read 2082 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
rox
Forumista
***
Offline Offline

Posts: 633


« on: 17-06-2011, 08:17:38 »

salve ragazzi ho provato a scrivere su un file usando fprintf, ma mi dà errore il compilatore... il programma che ho scritto è questo:


Code:
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>

int main() {
          int fd;
          char *name ="pippo.txt";
         fd=open(name,O_RDWR);
         char * scrittura="ciaooo";
         fprintf(pd,scrittura);
}


mi dà errore nella fprintf,perchè?? come si usa??
Logged

Una macchina è in grado di lavorare come cinquanta uomini comuni, ma nessuna macchina può svolgere il lavoro di un uomo straordinario.
rox
Forumista
***
Offline Offline

Posts: 633


« Reply #1 on: 17-06-2011, 08:52:28 »

o risolto in questo modo, ma non so se è meglio usare la fprintf...
Code:


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

int main() {
       
FILE * pFile;
char buffer[] = "Questo buffer contiene 36 caratteri.";
pFile = fopen ("fwrite.txt" , "w");
fwrite (buffer , 1 , 36 , pFile);
fclose (pFile);
return 0;

}



secondo voi quale è meglio??
Logged

Una macchina è in grado di lavorare come cinquanta uomini comuni, ma nessuna macchina può svolgere il lavoro di un uomo straordinario.
Pandemia000
Forumista Eroico
*****
Offline Offline

Gender: Male
Posts: 1.714


Γνῶθι Σεαυτόν


« Reply #2 on: 17-06-2011, 10:03:08 »

dai un'occhiata a queste slide:

http://www.lia.deis.unibo.it/Courses/ElemLB0708-ELE/lucidi/12-FileBinari.pdf
Logged

La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta. (Isaac Asimov)
ɹǝǝuıƃuǝsɹǝʌǝɹ
Administrator
God of the Forum
*****
Offline Offline

Gender: Male
Posts: 4.474


Più grande è la lotta, e più è glorioso il trionfo


WWW
« Reply #3 on: 17-06-2011, 11:13:07 »

Quello che tu hai fatto non è scrivere su file "in C" , ma scrivere su "descrittori di file POSIX (Sottoinsieme UNIX-Compatibile)" dentro un programma C" .

Per scrivere i file in C, usi fopen che restituisce FILE* e usi altre funzioni analoghe il cui nome inizia per "f", e che sono funzioni di libreria standard del linguaggio C, mentre per scrivere su descrittori di file POSIX (unix compatibile) usi chiamate di sistema (implementate in C) del tuo sistema posix (che in C sono generalmente quelle offerte dall'apposita libreria, e che si chiamano open, creat, unlink, write, read, ecc... (sono poche comunque pray).
Logged

La grande marcia della distruzione mentale proseguirà. Tutto verrà negato. Tutto diventerà un credo. È un atteggiamento ragionevole negare l'esistenza delle pietre sulla strada; sarà un dogma religioso affermarla. È una tesi razionale pensare di vivere tutti in un sogno; sarà un esempio di saggezza mistica affermare che siamo tutti svegli. Accenderemo fuochi per testimoniare che due più due fa quattro. Sguaineremo spade per dimostrare che le foglie sono verdi in estate. Non ci resterà quindi che difendere non solo le incredibili virtù e saggezze della vita umana, ma qualcosa di ancora più incredibile: questo immenso, impossibile universo che ci guarda dritto negli occhi. Combatteremo per i prodigi visibili come se fossero invisibili. Guarderemo l'erba e i cieli impossibili con uno strano coraggio. Saremo tra coloro che hanno visto eppure hanno creduto.

In tutto, amare e servire.

  
                            ن                           
I can deal with ads,
I can deal with buffer,
but when ads buffer
I suffer...

...nutrimi, o Signore, "con il pane delle lacrime; dammi, nelle lacrime, copiosa bevanda...

   YouTube 9GAG    anobii  S  Steam T.B.o.I. Wiki [univ] Lezioni private  ʼ  Albo d'Ateneo Unicode 3.0.1
Usa "Search" prima di aprire un post - Scrivi sempre nella sezione giusta - Non spammare - Rispetta gli altri utenti - E ricorda di seguire il Regolamento
Pages: [1]   Go Up
Print
Jump to: