Назад к вопросам
JuniorТеорияЧасто
Что выведет программа?
package main
import (
"fmt"
"strconv"
)
func main() {
n, err := strconv.Atoi("12a")
fmt.Println(n, err != nil)
}0 true
- Ждать
12:strconv.Atoiне останавливается на первой нецифре, а отвергает всю строку и возвращает0с ошибкой, отличной отnil. - Считать, что о плохом числе говорит только
0, как уatoiв C: в Go об этом сообщает второй результат, поэтомуerr != nilпечатаетtrue.
- Как напечатать причину, по которой
strconv.Atoiотверг строку? - Почему код не должен использовать
n, когдаerrне равенnil?