PROBLEMA [C++] Leggere e stampare una stringa con spazi

MrMojoRisin

Nuovo Utente
9
0
Salve a tutti, su un manuale ho trovato un esempio in c++ che però non riesco a compilare!
Questo è il codice della classe "Client" salvata in un file header e aperta poi dal programma:

Codice:
[COLOR=#333333][FONT=Consolas]class Cliente[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]{[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]public:[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]char nome[20];[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]char cognome[20];[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]char indirizzo[30];[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]void inserisci_nome( );[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]void inserisci_cognome( );[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]void inserisci_indirizzo( );[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]};[/FONT][/COLOR]

e questo è il programma:
Codice:
[COLOR=#333333][FONT=Consolas]#include <iostream>
[/FONT][/COLOR]using namespace std;
[COLOR=#333333][FONT=Consolas]#include “cliente.h”[/FONT][/COLOR]

[COLOR=#333333][FONT=Consolas]void Cliente::inserisci_nome( )[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]{[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cout << Inserire il nome del dipendente: “;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cin >> nome;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cout << endl;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]}[/FONT][/COLOR]

[COLOR=#333333][FONT=Consolas]void Cliente::inserisci_cognome( )[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]{[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cout << Inserire il cognome del dipendente: “;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cin >> cognome;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cout << endl;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]}[/FONT][/COLOR]

[COLOR=#333333][FONT=Consolas]void Cliente::inserisci_indirizzo( )[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]{[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cout << Inserire l’ indirizzo del dipendente: “;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cin >> indirizzo;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cin >> get(newline);	//elimina il Carriage Return[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]}[/FONT][/COLOR]


[COLOR=#333333][FONT=Consolas]main( )[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]{[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]Cliente cliente;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cliente.inserisci_nome( );[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cliente.inserisci_cognome( );[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cliente.inserisci_indirizzo( );[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]cout << “Il nome del cliente inserito è:[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]” << cliente.nome << endl;[/FONT][/COLOR]

[COLOR=#333333][FONT=Consolas]cout << “Il cognome del cliente inserito è:[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]” << cliente.cognome << endl;[/FONT][/COLOR]

[COLOR=#333333][FONT=Consolas]cout << “L’ indirizzo del cliente inserito è:[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]” << cliente.indirizzo << endl;[/FONT][/COLOR]
[COLOR=#333333][FONT=Consolas]}[/FONT][/COLOR]

il problema è che quando in indirizzo do più parole separate da spazi, il main mi stampa solo la prima... mi sapete aiutare?
 

signore del tempo

Utente Èlite
3,228
491
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
HDD
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
GPU
Sapphire 7850 1GB @ 1050MHz
Audio
Integrata
Monitor
Acer V193w
PSU
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
OS
ArchLinux + KDE - Windows 10
Codice:
cin >> indirizzo;
cin non prende spazi. E quel codice è discutibile.:rolleyes:
 

MrMojoRisin

Nuovo Utente
9
0
mooooooolto discutibile! per fortuna ho studiato il C dal Deitel e mi rendo conto delle cazzate che sparano, però mi serve una guida veloce e concetrata, gli errori cerco di capirli da solo o con l'aiuto di chi magari ne sa di più (tipo voi!)...
Sai dirmi come potrei fare senza modificare troppo quel codice?

P.S.: Potete consigliarmi già che ci siete una breve guida che mi offra una panoramica sul c++?
(Per breve intendo un infarinatura da leggere in max 2 gg! :inchino:)
 
Ultima modifica:

signore del tempo

Utente Èlite
3,228
491
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
HDD
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
GPU
Sapphire 7850 1GB @ 1050MHz
Audio
Integrata
Monitor
Acer V193w
PSU
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
OS
ArchLinux + KDE - Windows 10
  • Mi piace
Reazioni: MrMojoRisin

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!