Назад к вопросам
JuniorТеорияЧасто
Что выведет программа?
package main
import "fmt"
func inc(n int) int {
n++
return n
}
func main() {
x := 1
fmt.Println(inc(x), x)
}2 1
- Ждать
2 2:n— копияx, поэтомуn++меняет только копию;incвозвращает2, аxостаётся1. - Ждать
1 1или ошибку компиляции: параметр — обычная переменная функции, поэтомуn++разрешён и меняетn, которуюincзатем возвращает.
- Как изменить
main, чтобы самаxстала равна2? - Что напечатает программа, если параметр
incназватьxвместоn?