@rerererete

Golang выдает ошибку, что делать?

Написал маленькую программу:

package main

import (
	"fmt"
)


func main() {
	fmt.Println(test())
	fmt.Println(test1())
}
 
func test() (string, string, string,) {
	a := "jgtgt"
	g := "rtort"
	s := "privet"
	return a, g, s,

}

func test1() string {
	return "empty"

}

Выдает две ошибки:

main redeclared in this block {строка 8 столбец 6 }
	previous declaration at ./hello.go:18:6

syntax error: unexpected }, expecting expression {строка 19 столбец 1}

Не понял в чем проблема. Подумал что проблема в vscode, открыл через nano, все равно те же ошибки.
  • Вопрос задан
  • 649 просмотров
Решения вопроса 1
Вам компилятор четко пишет
main redeclared in this block {строка 8 столбец 6 }
previous declaration at ./hello.go:18:6

Перевожу: функция main написана несколько раз, второй раз она встречается в файле hello.go на 18 строчке.
Видимо, у вас в одной папке несколько файлов и в нескольких из них есть функция main. Так делать нельзя, все, что находится в одной папке, го считает одним пакетом.

Что касается второй ошибки, отправляйтесь изучать основы синтаксиса языка, иначе далеко так не уедете. У вас лишние запятые в конце списка параметров и в конце списка переменных.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы