Accueil Développement Qu'est-ce que scanf? - définition de techopedia

Qu'est-ce que scanf? - définition de techopedia

Table des matières:

Anonim

Définition - Que signifie Scanf?

Dans le langage de programmation C, scanf est une fonction qui lit les données formatées à partir de stdin (c'est-à-dire le flux d'entrée standard, qui est généralement le clavier, à moins qu'il ne soit redirigé), puis écrit les résultats dans les arguments donnés.

Cette fonction appartient à une famille de fonctions qui ont la même fonctionnalité mais ne diffèrent que par leur source de données. Par exemple, fscanf obtient son entrée à partir d'un flux de fichiers, tandis que sscanf obtient son entrée à partir d'une chaîne.

Techopedia explique Scanf

La fonction scanf a le prototype / signature suivant:

int scanf (format const char *, …);

  • int (entier) est le type de retour
  • format est une chaîne qui contient le ou les spécificateurs de type (voir ci-dessous)
  • "…" (points de suspension) indique que la fonction accepte un nombre variable d'arguments; chaque argument doit être une adresse mémoire dans laquelle le résultat converti est écrit

Un spécificateur de type simple se compose d'un symbole de pourcentage (%) et d'un caractère alpha qui indique le type. Voici quelques exemples des spécificateurs de type reconnus par scanf:

  • % c - Caractère
  • % d - Entier signé
  • % x - Entier non signé au format hexadécimal
  • % f - virgule flottante
  • % s - Chaîne

La fonction fonctionne en lisant l'entrée du flux d'entrée standard, puis analyse le contenu de "format" pour tout spécificateur de format, essayant de faire correspondre les deux. En cas de succès, la fonction écrit le résultat dans les arguments passés.

Par exemple, si l'appel de fonction est

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

et l'utilisateur tape "a1", la fonction écrira "a" dans "var1" et "1" dans "var2". Cependant, si l'appel de fonction est

scanf ("% x", & var);

la même entrée sera lue comme le nombre hexadécimal "a1", qui est 161 en décimal.

La fonction renvoie la valeur suivante:

  • > 0 - Le nombre d'éléments convertis et attribués avec succès.
  • 0 - Aucun élément n'a été attribué.
  • <0 - Erreur de lecture rencontrée ou fin de fichier (EOF) atteinte avant toute affectation.
Qu'est-ce que scanf? - définition de techopedia