Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Hponto

[Resolvido] Funcao em C++

Recommended Posts

Olá pessoal, tenho uma divida:

eu fiz um programinha(estou aprendo POO) e na segunda chamada à funcao "gets()"; nao funciona, tive que utilizar "cin >>".

onde eu errei???

como eu faco para que eu utilize gets sem preocupacao?????

 

gets() estão nas linhas: 31 e 35;

 

 

#include<iostream.h>
#include<cstdio>
#include<cstring>

class Pessoa{
	 
	private:
		int idade;
		char nome[40], cpf[15];

	public:
		//Metodo construtor
		Pessoa(int i, char n[], char c[]){
			idade = i;
			strcpy(nome, n);
			strcpy(cpf, c);
		}
		
		void display(){
			cout << "ola " << nome << ", voce tem " << idade << " anos" << endl;
			cout << "seu CPF: " << cpf << endl << endl;
		}

};
//Final da classe Pessoa
	
int main(){
	int i;
	char n[40], c[15]; // CPf do tipo char, pois será utilizado "." e "-"

	cout << "entre com o nome do cliente: ";
	gets(n);
	cout << "idade: ";
	cin >> i;
/////////
	cout << "CPF: ";
	gets©;
//a fincao acima gets© nao estah fincionando, muito embora no gets(n) mais acima funcione 
////////
	//cin >> c;
	Pessoa a(i, n, c);// instanciando "a" do tipo Pessoa, passando os parametros p/ função construtora
	a.display();
	//{cout << endl << a.idade << endl;} essa linha nao funcionaria, pois o atributo é privado
	system("PAUSE");

	return(0);
}

 

http://forum.imasters.com.br/public/style_emoticons/default/natal_biggrin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara o gets [e somente para ler strings e naum numeros inteiros!

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas "c" é um array de char, que serve para o cpf, pois erei utilizar ".", "-"

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu pessoal, eu jah solucionei a bronca...

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal, eu nao estava limpando do o "buffer", como na ling. "C".

no c++ a biblioteca utilizada é a "cstdio" o comando é o mesmo: fflush(stdin).

antes de cada chamada a gets();

 

o método cadAluno segue logo abaixo:

 

void Aluno::cadAluno(){

cout << "cadastro de aluno" << endl << endl;

cout << "Nome do aluno: ";

fflush(stdin);

gets(nome);

 

cout << "Idade: ";

cin >> idade;

 

cout << "Serie: ";

fflush(stdin);

gets(serie);

 

cout << "Turma: ";

fflush(stdin);

gets(turma);

}

 

 

 

como eu faco para definir o topico como resolvido????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado por compartilhar a solução do seu problema :D

 

Eu jah fiz isso! é soh você postar q foi resolvido e pronto!!

como eu faco para definir o topico como resolvido????

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.