Maison >développement back-end >Golang >Comment lire un entier à partir d'une entrée standard dans Go ?

Comment lire un entier à partir d'une entrée standard dans Go ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-06 12:31:12305parcourir

How to Read an Integer from Standard Input in Go?

Lecture d'un entier à partir d'une entrée standard dans Go

Question :

Comment pouvez-vous utiliser la fonction fmt.Scanf pour récupérer une entrée entière de l'entrée standard dans Go ? Si cette fonctionnalité n'est pas prise en charge par fmt.Scanf, fournissez une méthode alternative pour lire efficacement un seul entier.

Réponse :

La documentation officielle de Go fournit des informations complètes sur la fonction fmt.Scanf, située sur http://golang.org/pkg/fmt/#Scanf. La fonction fmt.Scanf vous permet de lire l'entrée formatée à partir de l'entrée standard. Dans ce cas, vous pouvez utiliser la fonction fmt.Scanf pour lire un entier en fournissant une chaîne de format %d. La syntaxe pour lire un entier à l'aide de fmt.Scanf est :

_, err := fmt.Scanf("%d", &variable_to_store_input)

Voici un exemple de lecture d'un entier à l'aide de fmt.Scanf :

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

Si vous préférez une méthode alternative de lecture un seul entier, vous pouvez utiliser l'approche suivante :

  1. Importer le Package bufio :

    import "bufio"
  2. Créez une instance bufio.Scanner :

    scanner := bufio.NewScanner(os.Stdin)
  3. Lisez l'entrée à l'aide de la méthode Next() :

    scanner.Scan()
  4. Récupérez l'entrée sous forme d'entier à l'aide du Méthode Int() :

    input, _ := strconv.Atoi(scanner.Text())

Cette méthode vous permet de lire un seul entier à partir de l'entrée standard à l'aide du package bufio.

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