21/12/08 22:37
bip
Il problema è il seguente:
scrivo in cin>>buffer ciao mondo nel file risulta scritto nel file solo ciao e il debug nn dice null
il codice è:
#include<iostream>
#include<conio.h>
#include<stdio.h>
#include<string>
#define dim 1000
using namespace std;
int c,s=0;
char buff[dim], buffer[dim];
FILE *pFile, *file;
//creo la struttura di memoria
//menu scelta
void sceltamenu(){
cout<<"con 0 inserisci dati\n";
cout<<"con 1 leggi dati\n";
cout<<"con 2 salva dati\n";
cin>>c;
}
//inserimento dati utente
//menu di stampa
int stampamenu(){
switch (c) {
case 0:cout<<"\ndati scritti\n";
break;
case 1:cout<<"\ndati letti\n";
break;
case 2:cout<<"\nsalvati\n";
break;
default:cout<<"\nerror\n";
break;
}
return c;
}
//manipolazione file
int scriveintmp(){
pFile = tmpfile();
fwrite(&buffer , 1 , sizeof(buffer) , pFile );
fclose(pFile);
return 0;
}
int scrivi(){
cin>>buffer;
int l=strlen(buffer);
pFile=fopen("myfile.txt","wb"
fwrite(&buffer,1,l,pFile);
fclose (pFile);
return 0;
}
int leggidafile(){
file=fopen("myfile.txt","r"
while (fgets(buff,dim,file)){
puts(buff);
}
return 0;
}
main(){
sceltamenu();
switch(c){
case 0:scrivi(),stampamenu();
break;
case 1:leggidafile(),stampamenu();
break;
default:"qualcosa non torna";
break;
}
system("pause"
}
hlplsche devo fare
scrivo in cin>>buffer ciao mondo nel file risulta scritto nel file solo ciao e il debug nn dice null
il codice è:
#include<iostream>
#include<conio.h>
#include<stdio.h>
#include<string>
#define dim 1000
using namespace std;
int c,s=0;
char buff[dim], buffer[dim];
FILE *pFile, *file;
//creo la struttura di memoria
//menu scelta
void sceltamenu(){
cout<<"con 0 inserisci dati\n";
cout<<"con 1 leggi dati\n";
cout<<"con 2 salva dati\n";
cin>>c;
}
//inserimento dati utente
//menu di stampa
int stampamenu(){
switch (c) {
case 0:cout<<"\ndati scritti\n";
break;
case 1:cout<<"\ndati letti\n";
break;
case 2:cout<<"\nsalvati\n";
break;
default:cout<<"\nerror\n";
break;
}
return c;
}
//manipolazione file
int scriveintmp(){
pFile = tmpfile();
fwrite(&buffer , 1 , sizeof(buffer) , pFile );
fclose(pFile);
return 0;
}
int scrivi(){
cin>>buffer;
int l=strlen(buffer);
pFile=fopen("myfile.txt","wb"
fwrite(&buffer,1,l,pFile);
fclose (pFile);
return 0;
}
int leggidafile(){
file=fopen("myfile.txt","r"
while (fgets(buff,dim,file)){
puts(buff);
}
return 0;
}
main(){
sceltamenu();
switch(c){
case 0:scrivi(),stampamenu();
break;
case 1:leggidafile(),stampamenu();
break;
default:"qualcosa non torna";
break;
}
system("pause"
}
hlplsche devo fare
aaa