Função de Isdigit na linguagem C

Função de Isdigit na linguagem C

O idioma C fornece uma série de funções em suas bibliotecas que permitem determinar se o tipo de dados de uma variável é de um determinado tipo. Nesse idioma, também existem funções que determinam as propriedades e classificam os dados no mesmo tipo. Por exemplo, a biblioteca CTYPE fornece um conjunto de funções que permitem determinar se o personagem que é inserido no argumento de entrada é numérico ou alfanumérico, dígito, gráficos, controle, uppercase e assim por diante.

Neste artigo de dica de Linx, mostraremos como usar a função iSDigit () desta biblioteca usando o Linux GCC. Usamos a função em exemplos práticos que preparamos para você. Ao fazer isso, usamos os trechos e imagens de código para aplicar o uso de iSdigit () em diferentes casos.

Também mostraremos uma descrição teórica completa desta função, sua sintaxe, argumentos de entrada e saída e o tipo de dados de cada um deles.

Sintaxe da função ISDigit em C

int isdigit (char c)

Descrição da função ISDigit em C

A função iSdigit () em C determina se o caractere de entrada "C" corresponde a valores decimais de 0 a 9 no código ASCII. Esses tipos de funções também são um ótimo recurso para recuperar as informações de fragmentos de string ou arquivos de texto e processar esses dados.

Esses tipos de funções são frequentemente usados ​​para complementar as funções como getchar () ou getch () que leem um personagem de um fluxo e retornam um número inteiro. Eles também retornam um personagem e um código de erro. Getchar () pode retornar o EOF (que é definido como uma constante negativa definida por implementação) por meio de um valor de retorno para indicar que o fluxo de entrada terminou.

Para a seguinte expressão, o iSdigit () retorna o resultado de "a" igual a "0" se "b" não contiver um personagem do tipo "dígito". Se "B" contiver um personagem do tipo "dígito", esta função retorna um resultado que não é igual a zero.

a = isdigit (b);


A função iSdigit () pertence ao “ctype.H ”Cabeçalho e deve ser declarado antes de usar esta função, conforme mostrado no seguinte fragmento:

#incluir


Uma vez que declaramos o cabeçalho no “.Arquivo C ”, podemos implementar o teto () e qualquer uma de suas funções.

Em seguida, compilamos um fragmento de código no qual usamos duas variáveis, A e B, com caracteres representando os dígitos e letras, respectivamente. Em seguida, enviamos -os como argumentos de entrada para Isdigit ().

Usando a função printf (), veremos o resultado que é retornado por cada uma das chamadas com os diferentes caracteres que são enviados como entrada no console de comando.

#incluir
#incluir
int main ()

char a = '3';
char b = 'a';
int c;
c = isdigit (a);
printf ("é caractere numérico: %d", c);
c = isdigit (b);
Printf ("\ nis caráter não numérico: %d \ n", c);
retornar 0;


Como mostra a figura a seguir, o resultado que é retornado pelo iSDigit () é igual a 0 para variável "A", enquanto não é igual a 0 para variável "B", que contém um personagem não numérico:

Exemplo: isdigit () como uma condição nos condicionais IF

Esses tipos de funções que são usados ​​para determinar o tipo de dados de uma variável sozinho não fornecem uma solução prática. Mas quando o resultado dessas funções é adicionado como uma condição em qualquer tipo de condicional, podemos executar o código ou gerar um retorno, dependendo se o tipo de dados inserido é o correto para um processo específico. Isso é especialmente útil quando criamos nossas próprias funções, pois evita erros de incompatibilidade de dados ou resultados errôneos se os dados errados forem passados ​​nos argumentos de entrada.

Neste exemplo, criamos um aplicativo de console simples em que inserimos um personagem, recuperamos -o com a função scanf () e depois usamos o iSdigit () para uma condição "se" para determinar se o personagem inserido é numérico ou não. Quando pressionamos a mensagem "Enter", a mensagem "O personagem é numérico" é exibido se for numérico. Caso contrário, a mensagem "O personagem não é numérico" é exibido.

Copie e cole o seguinte código para este exemplo em seu “.Arquivo C ”. Compilar e executar o programa, digitar um personagem e pressionar Enter. Para sair do aplicativo, pressione Ctrl + C:

#incluir
#incluir
void main ()

char a [2];
enquanto (1)

scanf ("%s", & a [0]);
if (isdigit ( *a) != 0)

printf ("Os caracteres são numéricos \ n");

outro

printf ("Os caracteres não são numéricos \ n");


retornar;



A figura mostra o uso dessa função nos condicionais "se" e nos resultados para cada caso.

Conclusão

Isdigit () é uma das funções definidas no "ctype.H ”Cabeçalho usado para classificar os personagens em seus vários subtipos, como numérico, alfanumérico, manchado e assim por diante. Neste artigo do Linux Dint, explicamos tudo sobre a função iSdigit (). Para ajudá-lo a dominar e entender esse recurso, criamos exemplos práticos e fragmentos de código que explicam seu uso passo a passo. Também adicionamos as imagens que mostram a implementação dos exemplos no console de comando. Esperamos que você tenha achado este artigo de idioma C útil. Veja outros artigos de dica do Linux para obter mais dicas e informações.