Oi pessoal, sou nova por aqui. Tive q fazer um programa na faculdade, como trabalho, simulando um elevador. O programa compila, faz a execução corretamente, sem apresentar nenhum erro, depois todos as opções são executadas corretamente, sem erros de lógica aparentes. Mas, depois de algumas opções executadas, ele pira, e começa a pular apenas de 1 em 1 andar, naum seguindo as opções selecionadas.
Falando com um amigo, ele me disse q poderia ser problema nan leitura dos dados, que depois de um tempo ele executa, como se jah tivesse lido os dados, qndo na verdade ainda naum leu, ele sugeriu q para isso, eu colocasse um fflush(stdin); antes da leitura de cada dado. No caso, antes de cada cin>>. Mas, naum sei se é porque o fflush naum funciona para o cin , mas naum resolveu meu problema, alguem tem alguma sugestão??
[]'s
Pira No Turco C++
Started By Lizi_Guardian, 16/09/2004, 03:12
1 reply to this topic
#1
Posted 16/09/2004, 03:12
#2
Posted 25/10/2004, 17:23
A linguagem C é do tipo ´faça tudo, pois ele nao fará por voce´.... gosto dessa abordagem vc pode fazer TUDO nessa linguagem, é magnifica e mto estimulante! E o Turbo C+ é um dos mais padronizados (ANSI C), entao este tipo de problema é água em relaçao a outros que chegam até a reiniciar a maquina!
Bem, voltando ao assunto... tente dar flushall(), uma função do TUrbo C, antes de referenciar a variavel via getch(), scanf()..... ou mesmo flush (variavel)....
Digite f, ou fl, ou flu.... selecione ele, aperte CONTROL+F1 e veja outras funções tipo flush....o Help do turbo C é mto bom!
o fflush(), e outros, sao mais avançados meios de limpar a regiao de memoria (já que quase tudo em C é feito por ponteiros, ainda mais usando scanf().....)
Eu gosto de usar o getch(), getche() - q mostra o texto digitado na tela.....
e o gets() - para strings.
Espero ter ajudado em algo
Bem, voltando ao assunto... tente dar flushall(), uma função do TUrbo C, antes de referenciar a variavel via getch(), scanf()..... ou mesmo flush (variavel)....
Digite f, ou fl, ou flu.... selecione ele, aperte CONTROL+F1 e veja outras funções tipo flush....o Help do turbo C é mto bom!
o fflush(), e outros, sao mais avançados meios de limpar a regiao de memoria (já que quase tudo em C é feito por ponteiros, ainda mais usando scanf().....)
Eu gosto de usar o getch(), getche() - q mostra o texto digitado na tela.....
e o gets() - para strings.
Espero ter ajudado em algo
Otimizando..... minha meta constante
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)