www.samueldiasneto.com: Linguagem C - caracter

Pesquisar em todo o site
<<< Voltar Avançar >>>
Se esta página lhe ajudar, considere fazer uma doação

7. Caracter

7.1 Verificando se o caracter é uma letra

Para fazer esta verificação utilize a macro isalpha( ). Ela faz parte do arquivo de cabeçalho ctype.h. Sua sintaxe é:

isalpha(caracter)

Exemplo:

/* Verificando se um caracter é uma letra
 * usando a macro isalpha() */

#include <stdio.h>
#include <ctype.h>

int main()
  {
    char caracter;

    printf("Digite um caracter :");
    caracter = getchar();
    printf("\n");
    if (isalpha(caracter))
      printf("O caracter é uma letra.\n");
    else
      printf("O caracter não é uma  letra.\n");
    return(0);
  }

7.2 Verificando se o caracter é um valor ASCII

Um valor ASCII é um valor entre 0 e 127. Para verificar se um caractere é um valor ASCII utilize a macro isascii( ) que faz parte do arquivo de cabeçalho ctype.h. Sua sintaxe é:
 
  isascii(caracter)

Exemplo :

/* Verificando se um caracter contém um valor ASCII
 * usando a macro isascii() */

#include <stdio.h>
#include <ctype.h>

int main()
  {
    char caracter;
   
    printf("\n");
    printf("Digite um caracter :");
    caracter = getchar();
    printf("\n");
    if (isascii(caracter))
      printf("O caracter contém o valor ASCII %d.\n",caracter);
    else
      printf("O caracter não contém um valor ASCII.\n");
 
    printf("\n");
    return(0);
  }

7.3 Verificando se o caracter é um caracter de controle

Um caracter de controle é composto pelo pressionamento da tecla control (CTRL) e uma letra ( ^A , ^B, ^C, ...... ^Z  ou  ^a, ^b, ^c ...... ^z). Para verificar se um caractere é de controle use a macro iscntrl( ). Ela faz parte do arquivo de cabeçalho ctype.h e sua sintaxe é:

iscntrl(caracter)

Exemplo:

/* Verificando se um caracter é de controle
 * usando a macro iscntrl() */

#include <stdio.h>
#include <ctype.h>

int main()
  {
    char caracter;
   
    printf("\n");
    printf("Digite um caracter :");
    caracter = getchar();
    printf("\n");
    if (iscntrl(caracter))
      {
        printf("O caracter digitado é um caracter de controle\n");
        printf("e equivale ao código ASCII %d.\n",caracter);
      }
    else
      printf("O caracter digitado não é um caracter de controle.\n");
 
    printf("\n");
    return(0);
  }


7.4 Verificando se o caracter é um dígito

Para verificar se o caracter é um dígito use a macro isdigit( ). Ela pertence ao arquivo de cabeçalho ctype.h e sua sintaxe é:

isdigit(caracter)

Exemplo :

/* Verificando se um caracter é um dígito
 * usando a macro isdigit() */

#include <stdio.h>
#include <ctype.h>

int main()
  {
    char caracter;
   
    printf("\n");
    printf("Digite um caracter :");
    caracter = getchar();
    printf("\n");
    if (isdigit(caracter))
      printf("O caracter é um dígito.\n");
    else
      printf("O caracter não é um dígito.\n");
 
    printf("\n");
    return(0);
  }


7.5 Verificando se o caracter é maiúsculo

Para verificar se o caracter é maiúsculo use a macro isupper( ). Ela pertence ao arquivo de cabeçalho ctype.h e sua sintaxe é:

isupper(caractere)

Exemplo:

/* Verificando se um caracter é maiúsculo
 * usando a macro isupper() */

#include <stdio.h>
#include <ctype.h>

int main()
  {
    char caracter;
   
    printf("\n");
    printf("Digite um caracter :");
    caracter = getchar();
    printf("\n");
    if (isupper(caracter))
      printf("O caracter é maiúsculo.\n");
    else
      printf("O caracter não é um maiúsculo.\n");
 
    printf("\n");
    return(0);
  }


7.6 Verificando se o caracter é minúsculo

Para verificar se o caracter é minúsculo use a macro islower( ). Ela pertence ao arquivo de cabeçalho ctype.h e sua sintaxe é:

islower(caractere)

Exemplo:

/* Verificando se um caracter é minúsculo
 * usando a macro islower() */

#include <stdio.h>
#include <ctype.h>

int main()
  {
    char caracter;
   
    printf("\n");
    printf("Digite um caracter :");
    caracter = getchar();
    printf("\n");
    if (islower(caracter))
      printf("O caracter é minúsculo.\n");
    else
      printf("O caracter não é um minúsculo.\n");
 
    printf("\n");
    return(0);
  }


7.7 Convertendo um caracter para maiúsculo

Para executar esta conversão você pode usar a macro _toupper( ) ou a função toupper( ). As duas estão no arquivo de cabeçalho ctype.h. A diferença entre as duas é que a macro não testa se o caractere a ser convertido é um minúsculo. Assim, se o caracter não for uma letra minúscula a macro fará uma conversão errada. Se você tiver certeza que o caractere é uma letra minúscula use a macro que é mais rápida, caso contrário use a função. A sintaxe das duas segue abaixo:

_toupper(caracter)

toupper(caracter)

Exemplo :

/* Convertendo um caracter para maiúsculo */

#include <stdio.h>
#include <ctype.h>

int main()
  {
    char caracter;
   
    printf("\n");
    printf("Digite um caracter minúsculo, um dígito ou um símbolo
   	        qualquer :");
    caracter = getchar();
    printf("\n");
    printf("Convertendo com a função toupper( ) ==> %c\n",
	toupper(caracter));
    printf("\n");
    printf("Convertendo com a macro _toupper( ) ==> %c\n",
	_toupper(caracter));
    printf("\n");
    return(0);
  }


7.8 Convertendo um caracter para minúsculo

Para executar esta conversão você pode usar a macro _tolower( ) ou a função tolower( ). As duas estão no arquivo de cabeçalho ctype.h. A diferença entre as duas é que a macro não testa se o caractere a ser convertido é um maiúsculo. Assim, se o caracter não for uma letra maiúscula a macro fará uma conversão errada. Se você tiver certeza que o caractere é uma letra maiúscula use a macro que é mais rápida, caso contrário use a função. A sintaxe das duas segue abaixo:

_tolower(caracter)

tolower(caracter)

Exemplo :

/* Convertendo um caracter para minúsculo */

#include <stdio.h>
#include <ctype.h>

int main()
  {
    char caracter;
   
    printf("\n");
    printf("Digite um caracter maiúsculo, um dígito
	ou um símbolo qualquer :");
    caracter = getchar();
    printf("\n");
    printf("Convertendo com a função tolower( ) ==> %c\n",
	tolower(caracter));
    printf("\n");
    printf("Convertendo com a macro _tolower( ) ==> %c\n",
	_tolower(caracter));
    printf("\n");
    return(0);
  }

Se esta página lhe ajudou, considere fazer uma doação
<<< Voltar Avançar >>>