mak_ufo
@mak_ufo

Почему не получается изменить поле внутри функции?

Извиняюсь за глупый вопроc. Только начал знакомство с Go. Есть такой код:
package main

import "fmt"
import "math"

type Circle struct {
    x int
    y int
    r float64
}

func circleArea(c *Circle) float64 {
    с.r = 10
    return math.Pi * c.r * c.r
}

func main() {
    c:= Circle{1, 2, 3}
    fmt.Println(circleArea(&c))
}


В консоли вижу:
./hello.go:13: undefined: с in с.r
./hello.go:13: invalid indirect of 10 (type untyped number)
./hello.go:13: cannot assign to с.r

Почему у меня не получается изменить значение поля? Я же принимаю на вход указатель, и по идее внешняя переменная тоже должна изменяться
  • Вопрос задан
  • 619 просмотров
Решения вопроса 1
У вас "с" русская в строчке с.r = 10
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы