Ir para conteúdo
Fórum Script Brasil
  • 0

Teclando <enter>


evandrolnr

Pergunta

Boa noite. Fiz um programa que recebe um <enter> como argumento e testa a

tecla digitada. O compilador não entende o meu enter como sendo tal!?

#include <stdio.h>
#include <stdlib.h>
int main()
{
    char resp;
    char resp1 = '\r';

    scanf("%c",&resp); /* é digitado <enter> para teste */
    printf("\nresp %d\n",resp);
    printf("\nresp1 %d\n",resp1);
    if ( resp == '\r' )
       printf("\ndigitou enter\n");
    else
       printf("\nnão digitou enter\n");
    return 0;
}

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Acho que descobri o que estava errado com o <enter>.

Ao pressionar <return> obtemos uma nova linha.

O caracter que indica nova linha é '\n', e não '\r'.

Não sei ainda em que caso é usado '\r'.

O programa ficou assim:

#include <stdio.h>
#include <stdlib.h>
int main()
{
    char resp;
    char resp1 = '\n';
    scanf("%c",&resp); /* é digitado enter para teste */
    printf("\nresp %d\n",resp);
    printf("\nresp1 %d\n",resp1);
    if ( resp == '\n' )
       printf("\nDigitou enter\n");
    else
       printf("\nNão digitou enter\n");
        return 0;
}

Link para o comentário
Compartilhar em outros sites

  • 0

A versão do comilador c que estou usando (Oracle ProC) não tem o include <conio.h>. Peguei um programa de treinamento que usa '\r' como teste de <enter> (vide abaixo), e converti a função getche() em scanf(). A versão do programa que eu fiz só funciona se eu usar '\n' como teste de<enter> ?! :blush:

/* Contachar.C */
/* Conta caracteres de uma frase */
#include <stdio.h>
#include <stdlib.h>
#include <conio.h> para getche() */
int main()                
{    
    int cont=0; /* Contador */

    while(getche() != '\r') /* Enquanto não [Enter]  */
        cont++; /* Corpo do laço */
    /* Fora do laço */
    printf("\nO número de caracteres é %d\n" , cont);

    system("PAUSE");    
    return 0;        
}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...