Lar Desenvolvimento O que é scanf? - o que é techopedia

O que é scanf? - o que é techopedia

Índice:

Anonim

Definição - O que significa Scanf?

Na linguagem de programação C, scanf é uma função que lê dados formatados de stdin (ou seja, o fluxo de entrada padrão, que geralmente é o teclado, a menos que seja redirecionado) e depois grava os resultados nos argumentos apresentados.

Essa função pertence a uma família de funções que possuem a mesma funcionalidade, mas diferem apenas na fonte de dados. Por exemplo, o fscanf obtém sua entrada de um fluxo de arquivos, enquanto o sscanf obtém sua entrada de uma sequência.

Techopedia explica Scanf

A função scanf possui o seguinte protótipo / assinatura:

int scanf (formato const char *, …);

Onde

  • int (inteiro) é o tipo de retorno
  • formato é uma sequência que contém o (s) especificador (es) de tipo (veja abaixo)
  • "…" (reticências) indica que a função aceita um número variável de argumentos; cada argumento deve ser um endereço de memória onde o resultado convertido é gravado em

Um especificador de tipo simples consiste em um símbolo de porcentagem (%) e um caractere alfa que indica o tipo. Abaixo estão alguns exemplos dos especificadores de tipo reconhecidos pelo scanf:

  • % c - Personagem
  • % d - Inteiro assinado
  • % x - número inteiro não assinado em formato hexadecimal
  • % f - ponto flutuante
  • % s - String

A função funciona lendo a entrada do fluxo de entrada padrão e, em seguida, varre o conteúdo de "formato" em busca de qualquer especificador de formato, tentando combinar os dois. Em caso de sucesso, a função grava o resultado no (s) argumento (s) passado (s).

Por exemplo, se a chamada de função for

scanf ("% c% d", & var1, & var2);

e o usuário digitar "a1", a função gravará "a" em "var1" e "1" em "var2". Se a chamada de função, no entanto, for

scanf ("% x", & var);

a mesma entrada será lida como o número hexadecimal "a1", que é 161 em decimal.

A função retorna o seguinte valor:

  • > 0 - O número de itens convertidos e atribuídos com sucesso.
  • 0 - Nenhum item foi atribuído.
  • <0 - Erro de leitura encontrado ou o fim do arquivo (EOF) alcançado antes de qualquer atribuição.
O que é scanf? - o que é techopedia