Sobes.tech
Senior

// Питање 1. Шта ће се приказати на екрану? package main import "fmt" func main() { s := "Hello world" s[0] = "h" if err != nil { fmt.Println("Грешка", err) } fmt.Println(s) }

sobes.tech АИ

Одговор од АИ

Kod se neće kompajlirati. U Go jeziku, stringovi (string) su nepromenljivi, ne može se dodeliti vrednost pojedinačnom bajtu stringa, na primer s[0] = "h" izazvaće grešku pri kompajliranju.

Takođe, promenljiva err nije deklarisana, pa će uslov if err != nil {} takođe izazvati grešku.

Pravi način za izmenu stringa je da se kreira novi string, na primer:

package main

import "fmt"

func main() {
    s := "Hello world"
    s = "h" + s[1:]
    fmt.Println(s) // ispisuje "hello world"
}

Na ovaj način, originalni kod će izazvati greške pri kompajliranju i neće ništa ispisati.