Salve a tutti!!
studio da un po' di tempo c++, e ora mi sono proprio bloccato, questo mi fa strani scherzi
#include <iostream>
#include <string>
using namespace std;
void main()
{
struct dipendente
{
char nome[30];
char cognome[30];
int eta;
int stipendio;
};
int num, chi;
struct dipendente lista[100];
cout<<"Quanti dipendenti ha l'azienda? ";cin>>num;
for(int i=0; i<num; i++)
{
cout<<"\nInserisci il nome del dipendente num "<<i+1<<": ";cin.getline(lista[i].nome, 30, '\n');
cout<<"\nInserisci il cognome: ";cin.getline(lista[i].cognome, '\n');
cout<<"\nInserisci l'eta': ";cin>>lista[i].eta;
cout<<"\nInserisci lo stipendio che percepisce: ";cin>>lista[i].stipendio;
}
cout<<"\n\nQuale dipendente vuoi vedere? ";cin>>chi;
cout<<"\n\nNome: "<<lista[chi].nome;
cout<<"\nCogmone: "<<lista[chi].cognome;
cout<<"\nEta: "<<lista[chi].eta;
cout<<"\nStipendio: "<<lista[chi].cognome;
cout<<endl;
system("pause");
}
allora quano lo faccio partire i chiede quanti dipendenti voglio inserire poi dovrebbe chiedermi il nome del dipendente ma non lo fa, mi scrive:
inserisci nome dipendente.....
inserisci il cognome:_
nel senso che scrive il cout del nome ma non me lo lascia inserire e passa subito al cognome e quello me lo lascia inserire, non riesco a capire quale si ail problema, ho fatto dei tentativi modificando cose "collegate" ma come mi aspettavo è stato tutto inutile
poi dato che non riuscivo a trovare il problema ho pensato di farmi un bel paragrafo sui vari tipi di input e output e com'è che va a finire... altri problemi
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <string.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
char agetchar;
char agetch;
char agetche;
char agets[20];
cout<<"inserisci qualcosa (getchar): ";agetchar= getchar();
cout<<endl<<agetchar;
cout<<"\ninserisci un'altra cosa(getch): "; agetch= getch();
cout<<endl<<agetch;
cout<<"\ninserisci un'altra cosa ancora(getche): ";agetche=getche();
cout<<endl<<agetche;
cout<<"\ninserisci una piccola frase(gets): ";cin>>agets;
gets(agets);
cout<<endl<<agets<<endl;
cout<<"la frase che hai inserito e' lunga "<<strlen(agets)<<endl<<endl;
cout<<endl<<endl;
system("pause");
return 0;
}
stavolta è il gets a creare problemi, non mi lascia inserire niente e dopo controllando la lungezza dice che è zero
c'è qualcuno che potrebbe darmi una mano??