Torna indietro   Hardware Upgrade Forum > Software > Programmazione

FUJIFILM X-T30 III, la nuova mirrorless compatta
FUJIFILM X-T30 III, la nuova mirrorless compatta
FUJIFILM X-T30 III è la nuvoa fotocamera mirrorless pensata per chi si avvicina alla fotografia e ricerca una soluzione leggera e compatta, da avere sempre a disposizione ma che non porti a rinunce quanto a controllo dell'immagine.
Oracle AI World 2025: l'IA cambia tutto, a partire dai dati
Oracle AI World 2025: l'IA cambia tutto, a partire dai dati
Da Las Vegas, la visione di Larry Ellison e la concretezza di Clay Magouyrk definiscono la nuova traiettoria di Oracle: portare l’intelligenza artificiale ai dati, non i dati all’intelligenza, costruendo un’infrastruttura cloud e applicativa in cui gli agenti IA diventano parte integrante dei processi aziendali, fino al cuore delle imprese europee
Micron e millisecondi: la piattaforma ServiceNow guida l'infrastruttura IT di Aston Martin F1
Micron e millisecondi: la piattaforma ServiceNow guida l'infrastruttura IT di Aston Martin F1
Dalla precisione estrema dei componenti alla gestione digitale dei processi: come la piattaforma ServiceNow consente ad Aston Martin Aramco Formula One Team di ottimizzare risorse IT e flussi operativi in un ambiente dove ogni millesimo di secondo conta
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 27-12-2008, 16:10   #1
Spanaccio
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 13
[C++] utilizzo dell'header<fstream> per scrittura su file

Salve a tutti! Mi chiedevo: facendo un programma con le liste..come posso stampare su file il risultato della funzione "stampa lista" dopo che ho inserito tutti i dati??
Spanaccio è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 16:21   #2
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
crei una funzione che accetta come parametro uno stream che poi sia cout cerr clog ifstream ofstream o chi per loro te ne dovrebbe importare poco, inoltre visto che mi sa di esercizio scolastico mi rifiuto di fornirti esempi belli e pronti
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 16:28   #3
Spanaccio
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 13
Grazie mille! Solo che sto alle prime armi col C++ e ti garantisco che non è un esercizio scolastico XD !! Ho fatto un programma per catalogare i miei vinili..e mi sarebbe piaciuto stmparli su un file di testo!! Mi accontento anche di un link dove viene spiegato il file stream.. purtroppo sul libro dove studio è fatto male..e facendo da autodidatta non ho altre soluzioni! Grazie ancora
Spanaccio è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 16:37   #4
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
allora la cosa è molto semplice te hai presente l'oggetto cout? è la stessa identica cosa.
qui trovi quello che ti serve sapere
http://www.cplusplus.com/reference/i...m/fstream.html
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 17:08   #5
Spanaccio
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 13
La funzione per stampare a video l'ho fatta cosi:

void stampa_lista(lista output)
{
lista p=output;
while(p!=0)
{
cout<<endl<<p->artista<<'\n'<<p->album<<'\n'<<p->anno<<'\n'<<'\n';
p=p->succ;
}
}

Non riesco a fare quella per stamparlo su file..ho provato cosi ma mi dà errore:

void stampa_file(fstream flusso)
{

flusso << stampa_lista(lista output);
}
Spanaccio è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 17:21   #6
stdecden
Member
 
L'Avatar di stdecden
 
Iscritto dal: Apr 2007
Messaggi: 263
Non sarebbe meglio usare le STL???
stdecden è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 17:31   #7
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
Quote:
Originariamente inviato da Spanaccio Guarda i messaggi
La funzione per stampare a video l'ho fatta cosi:

void stampa_lista(lista output)
{
lista p=output;
while(p!=0)
{
cout<<endl<<p->artista<<'\n'<<p->album<<'\n'<<p->anno<<'\n'<<'\n';
p=p->succ;
}
}

Non riesco a fare quella per stamparlo su file..ho provato cosi ma mi dà errore:

void stampa_file(fstream flusso)
{

flusso << stampa_lista(lista output);
}
perchè dici al fusso di stampare un void, invece te devi passare a stampa lista il flusso e sostituire cout con flusso, o dischiarlo all'interno dipo così
Codice:
void stampa_lista(fstream out, lista output){
     lista p=output;   
     while(p!=0)
     {
         out<<endl<<p->artista<<'\n'<<p->album<<'\n'<<p->anno<<'\n'<<'\n';
         p=p->succ;
     }
}
capito?
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza

Ultima modifica di wizard1993 : 27-12-2008 alle 19:44.
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 19:18   #8
Spanaccio
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 13
Giustoo!! Ho capito il ragionamento..l'unica cosa è che il compilatore mi da molti errori alla finzioni..non fa compilarlo!!

Ultima modifica di Spanaccio : 27-12-2008 alle 19:30.
Spanaccio è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 19:45   #9
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
avevo sbagliato a scrivere, ora dovrebbe andare se non ho sbagliato di nuovo, vado di corsa quindi forse qualcosa mi è sfuggito
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 20:03   #10
Spanaccio
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 13
Grazie adesso è perfetto! Nel main ho scritto:

lista catalogo=0;
fstream flusso;
flusso.open("Vinile.txt" , ios::out);
flusso<<stampa_file(flusso,catalogo);
flusso.close();

ma mi da un errore con scritto:"// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 50. Copy constructor and assignment operator of ios_base
private:
ios_base(const ios_base&);" ..vedrò di risolvere! Grazie ancora
Spanaccio è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 20:08   #11
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
Quote:
Originariamente inviato da Spanaccio Guarda i messaggi
Grazie adesso è perfetto! Nel main ho scritto:

lista catalogo=0;
fstream flusso;
flusso.open("Vinile.txt" , ios::out);
flusso<<stampa_file(flusso,catalogo);
flusso.close();

ma mi da un errore con scritto:"// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 50. Copy constructor and assignment operator of ios_base
private:
ios_base(const ios_base&);" ..vedrò di risolvere! Grazie ancora
non ho un compilatore a portata di mano ma prova a sostiture
Codice:
flusso<<stampa_file(flusso,catalogo);
con
Codice:
stampa_file(&flusso,catalogo)
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 27-12-2008, 20:25   #12
Torav
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 558
ti basta definire la funzione in questo modo:
Codice:
void stampa_file(fstream &flusso)
{
// corpo
}
questo perchè quando si tratta di stream devi sempre operare con indirizzi (cioè puntatori o reference)
Torav è offline   Rispondi citando il messaggio o parte di esso
Old 28-12-2008, 18:07   #13
Spanaccio
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 13
Facendo come ha suggerito wizard il programma va ma crea un file di testo vuoto!!!
Spanaccio è offline   Rispondi citando il messaggio o parte di esso
Old 28-12-2008, 21:48   #14
wizard1993
Senior Member
 
L'Avatar di wizard1993
 
Iscritto dal: Apr 2006
Messaggi: 22462
Quote:
Originariamente inviato da Spanaccio Guarda i messaggi
Facendo come ha suggerito wizard il programma va ma crea un file di testo vuoto!!!
ma catalogo lo inizializzi mai con qualcosa di non vuoto?
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza
wizard1993 è offline   Rispondi citando il messaggio o parte di esso
Old 29-12-2008, 19:21   #15
Spanaccio
Junior Member
 
Iscritto dal: Dec 2008
Messaggi: 13
Apposto!!Risolto..non l'avevo messo nello switch..
Spanaccio è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


FUJIFILM X-T30 III, la nuova mirrorless compatta FUJIFILM X-T30 III, la nuova mirrorless compatta
Oracle AI World 2025: l'IA cambia tutto, a partire dai dati Oracle AI World 2025: l'IA cambia tutto, a parti...
Micron e millisecondi: la piattaforma ServiceNow guida l'infrastruttura IT di Aston Martin F1 Micron e millisecondi: la piattaforma ServiceNow...
ASUS GeForce RTX 5080 Noctua OC Edition: una custom fenomenale, ma anche enorme ASUS GeForce RTX 5080 Noctua OC Edition: una cus...
Dreame Aqua10 Ultra Roller, la pulizia di casa con un rullo Dreame Aqua10 Ultra Roller, la pulizia di casa c...
Microsoft chiude definitivamente con le ...
5 TV in grosso ribasso su Amazon: LG OLE...
Recensione Xiaomi Watch S4 41mm: lo smar...
Grandi affari del weeekend: su Amazon ci...
Doom nello spazio: lo sparatutto pi&ugra...
Apple Day su Amazon: crollano i prezzi d...
Nothing Phone (3a) Pro scende a 392€ su ...
Se non sei morto, clicca qui: la truffa ...
Amazon taglia il prezzo di iPhone 16: da...
2 portatili che costano pochissimo: tutt...
TSMC: scorte di terre rare sufficienti p...
Memoria RAM: si prevedono aumenti fino a...
Quando il navigatore sbaglia: Porsche bl...
10 volte più veloce di una GPU NV...
Halo: Campaign Evolved, il remake di Com...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 12:11.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v