Очистка буфера в Go - PullRequest
       2

Очистка буфера в Go

0 голосов
/ 02 января 2019

Я новичок в Golang, и пока я пытаюсь получить последовательный ввод, первый scanf () получает ввод, а остальные scanf () опускаются

Например:

 fmt.Println("Enter A: ")
  fmt.Scanf("%d",a)
  fmt.Println("Enter B: )
  fmt.Scanf("%d",b)

В этом случае первый Scanf работает, а второй не получает никакого ввода

Ответы [ 2 ]

0 голосов
/ 02 января 2019

Используйте scan вместо scanf, так как вы пытаетесь получить int,

    var a, b int    
    fmt.Println("Enter A: ")
    fmt.Scan(&a)
    fmt.Println("Enter B: ")
    fmt.Scan(&b)

Если вы хотите ввести строку,

    reader := bufio.NewReader(os.Stdin)
    var a,b string
    fmt.Println("Enter A: ")
    a, _ := reader.ReadString("\n")
    fmt.Println("Enter B: ")
    b, _ := reader.ReadString("\n")
0 голосов
/ 02 января 2019

Я думаю, что вы сделали опечатку:

fmt.Println("Enter B: ) 

fmt.Println("Enter B: ")

Заметили разницу?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...