Maison >développement back-end >Golang >Comment puis-je lire un entier à partir d'une entrée standard dans Go à l'aide de fmt.Scanf ?

Comment puis-je lire un entier à partir d'une entrée standard dans Go à l'aide de fmt.Scanf ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-02 20:14:10554parcourir

How Can I Read an Integer from Standard Input in Go Using fmt.Scanf?

Lecture d'un entier à partir d'une entrée standard à l'aide de fmt.Scanf dans Go

La question se pose quand nous devons obtenir une valeur entière de l'utilisateur via l'entrée standard dans Golang. Cet article explore l'utilisation de la fonction fmt.Scanf à cette fin, présente sa mise en œuvre et décrit des approches alternatives.

Utilisation de fmt.Scanf

La fonction fmt.Scanf fournit un moyen efficace de lire une entrée formatée à partir de l'entrée standard. Pour lire un entier, l'extrait de code suivant peut être utilisé :

import (
    "fmt"
)

func main() {
    var i int
    _, err := fmt.Scanf("%d", &i)
}

Ici, le code utilise le spécificateur de format %d pour indiquer que la saisie de l'utilisateur doit être interprétée comme un entier. La syntaxe &i est utilisée pour transmettre l'adresse de la variable i, garantissant que la fonction peut modifier sa valeur.

Solutions alternatives

Si pour une raison quelconque, fmt. Scanf ne convient pas, il existe des approches alternatives pour lire un seul entier à partir du standard input:

  • io.Scan : Permet de lire une seule ligne d'entrée, qui peut ensuite être convertie en entier à l'aide de la fonction strconv.Atoi.
  • bufio.Scanner : Fournit une interface plus avancée pour le traitement de texte, permettant la lecture d'entiers à l'aide de son Scan() fonction.

Conclusion

Comprendre comment lire un entier à partir d'une entrée standard dans Golang est essentiel pour divers scénarios de programmation. La fonction fmt.Scanf est une solution pratique pour cette tâche, mais des alternatives sont disponibles en fonction des besoins spécifiques.

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!

Déclaration:
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