Ce message est très basique mais il nous apprend à lire une variable donnée par un utilisateur en C à l’aide de la fonction Scanf. Avec cette fonction, nous pouvons lire n’importe quel type de données, tant que nous spécifions correctement votre type.
Il est appelé scanf
car il analyse selon un format. En tant que premier argument, il reçoit le format (une chaîne) et un second argument l’adresse de la mémoire dans laquelle vous mettrez la valeur de valeur.
Ladite fonction pour lire les données par clavier en C est dans la STDIO. H Bibliothèque H, unique que nous devons faire, c’est l’inclure avec #include <stdio.h>
.
Comment lire des variables avec scanf
Pour cela, nous déclarons La variable, puis nous appelons la fonction, passant la direction de la variable à l’aide de l’opérateur &
. Au fait, lorsque nous lisons les chaînes qui ne sont pas nécessaires, nous passons le nom de la variable sans obtenir votre adresse.
Lire une variable entière en C
est comme ceci:
Voir le gist sur github.
Le printf avant que le scanafe ne permet d’indiquer à l’utilisateur ce qu’il devrait faire, car Scanf pause le programme jusqu’à ce qu’il lit la valeur. Le format utilisé est% d.
Obtenez une valeur flottante par clavier
identique à celle que nous l’avons fait pour un entier, mais avec un flottant. Il y a comme ça:
Voir le gist sur github.
Le format est% F. Faites attention lorsque nous imprimons le nombre, nous utilisons% 0,2f afin qu’il n’imprimant que 2 décimales après le point; Cela ne veut pas montrer le nombre à son expression maximale; Mais si vous voulez que vous puissiez simplement utiliser% f.
String avec scanf
Pour lire une chaîne en C est presque identique, mais maintenant nous ne passons pas l’adresse mémoire car une chaîne déjà c’est un pointeur au premier caractère comme le forme.
Voir le gist sur github.
Remarque: Veuillez lire pourquoi utiliser des fgets au lieu de scanf si vous souhaitez améliorer la sécurité de vos programmes.
plus de formats
Vous pouvez lire des variables de nombreux types; Spécifier le format. Dont je me souviens, sont:
% d pour les entiers déclarés avec int
% s pour les chaînes déclarées avec char*
ou char cadena
% C pour les caractères déclarés avec char
% F pour flottant déclaré avec float
% l pour les entiers déclarés comme long
% LLU pour les entiers unsigned long long
(nous l’utilisons lorsque nous avons vu convertir le convertir binaire en décimal)