Ir para conteúdo

POWERED BY:

Arquivado

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

DoisReal

Função não funciona

Recommended Posts

[O código abaixo funciona perfeitamente. Eu coloco uma saudação e ele da a mensagem seguida da saudação definida pelo usuário:

 

#include <iostream.h>  // cout, cin
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>     // getch   printf
#include <string.h>
#include <windows.h>   // COORD

/*============================================================================*/
main ()

{ char saudacao[100];
  cout <<"Digite a sua saudacao: "; gets (saudacao);
  cout <<"\nSua saudacao eh: " << saudacao;
  getch();
}   

Porém este proximo código acontece um erro. Se eu optar pela opçao 1 ou 2 ele apenas aparece a frase e nao deixa o usuario definir um nome.

 

#include <iostream.h>  // cout, cin
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>     // getch   printf
#include <string.h>
#include <windows.h>   // COORD

/*============================================================================*/
char nome[50];

void entrada()
{ 
  cout <<"Digite seu nome: "; gets (nome);
  cout <<"\nSua saudacao eh: " << nome;
  getch();
}

void saida()
{ 
     cout <<"Digite seu nome: "; gets (nome);
  cout <<"\nObrigado. Volte sempre Sr. " << nome;
  getch();  
}


main ()
{ int opcao;
  cout <<"1 - Entrando"; 
  cout <<"\n2 - Saindo";
  cout <<"\n\nDigite sua opcao: "; cin >> opcao;
  if (opcao == 1)
     { entrada(); getch(); }
  else { saida(); getch(); }
}   

Compartilhar este post


Link para o post
Compartilhar em outros sites

Saque fora o '.h' dos headers.

O tipo de retorno de main é int e deve ser explícito.

 

problema1.cpp:23: warning: ISO C++ forbids declaration of ‘main’ with no type

 

Não use gets.

Decida-se entre usar coisas de C ou C++.

Nenhum dos dois códigos compila aqui porque não existe nenhum namespace definido (using namespace std;)

 

O teu problema é justamente o gets. Troque por cin e tire os getch que funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Isis.

 

Tirei o "gets" e adicionei o "cin"

 

Porém se eu digitar "Carlos Alberto Parreira"

 

Aparece somente "Carlos"

 

Qual seria a solução ?

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.