Que signifie scanf en langage C ?

下次还敢
Libérer: 2024-05-02 17:09:16
original
959 Les gens l'ont consulté

La fonction

scanf est utilisée pour lire les données à partir de l'entrée standard. Elle spécifie le type et le format des données via une chaîne de format et renvoie le nombre d'éléments lus.

Que signifie scanf en langage C ?

signification de scanf

scanf est une fonction en langage C utilisée pour lire des données à partir d'une entrée standard (généralement le clavier). Le « scan » dans son nom signifie entrée de numérisation et « f » signifie format.

Prototype de fonction

<code class="c">int scanf(const char *format_string, ...);</code>
Copier après la connexion

Parameters

  • format_string : Une chaîne de format qui spécifie comment interpréter l'entrée. format_string:一个格式字符串,指定如何解释输入。
  • ...:一个可选的变量列表,接收读取到的数据。

工作原理

scanf 使用 format_string 作为模板来指导输入解释。format_string 包含格式说明符,每个格式说明符对应于要读取的一个数据类型(例如 %d 表示整数,%f 表示浮点数)。

scanf 会逐个扫描输入字符,并根据格式说明符将其转换为相应的数据类型。如果输入不匹配格式说明符,则 scanf 会报告错误。

返回值

scanf 返回一个整数,表示成功读取的数据项数量。如果发生错误或达到输入结束(EOF),则返回 EOF

示例

以下代码使用 scanf 从标准输入读取一个整数和一个浮点数:

<code class="c">int num;
float real;
scanf("%d %f", &num, &real);</code>
Copier après la connexion

注意

  • scanf 不会自动跳过空白字符(例如空格、制表符)。如果 format_string 中需要跳过空白字符,可以使用 %*[whitespace]。(其中 *
  • ... : Une liste facultative de variables pour recevoir les données lues.
🎜Comment ça marche🎜🎜🎜scanf utilise format_string comme modèle pour guider l'interprétation des entrées. format_string contient des spécificateurs de format, chaque spécificateur de format correspondant à un type de données à lire (par exemple, %d signifie un entier, %f représente un nombre à virgule flottante). 🎜🎜scanf analysera les caractères saisis un par un et les convertira en type de données correspondant selon le spécificateur de format. scanf signale une erreur si l'entrée ne correspond pas au spécificateur de format. 🎜🎜🎜Valeur de retour 🎜🎜🎜scanf renvoie un entier indiquant le nombre d'éléments de données lus avec succès. Si une erreur se produit ou si la fin de la saisie (EOF) est atteinte, EOF est renvoyé. 🎜🎜🎜Exemple🎜🎜🎜Le code suivant utilise scanf pour lire un entier et un nombre à virgule flottante à partir de l'entrée standard : 🎜rrreee🎜🎜Remarque🎜🎜🎜🎜scanf n'ignore pas automatiquement les caractères d'espacement (par exemple les espaces, les tabulations). Si vous devez ignorer les espaces dans format_string, vous pouvez utiliser %*[whitespace]. (où * signifie lire mais ignorer l'entrée) 🎜🎜scanf ne vérifie pas que la valeur d'entrée est valide. Si une valeur non valide est saisie, scanf signale une erreur ou donne des résultats imprévisibles. 🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal