Ce face print și println
print și println sunt funcții predefinite, disponibile fără niciun import. Scriu pe ieșirea de eroare (stderr), nu pe ieșirea standard. println pune spațiu între argumente și un rând nou la final; print nu pune nimic între ele.
Formatul lor este ales de implementare și s-a schimbat între versiuni (versiunile vechi de Go afișau 2.5 ca +2.500000e+000), iar pentru un slice afișează doar lungimea, capacitatea și o adresă ([2/2]0x14000012345); struct-urile nu pot fi afișate deloc. Documentația spune că nu este garantat că vor rămâne în limbaj. Pentru orice program real folosește fmt.Println, fmt.Printf sau pachetul log.
Parametri
| Parametru | Descriere |
|---|---|
args |
Valori de tipuri simple: numere, texte, bool, pointeri. |
Exemple
Exemplul 1: Formatul lui print și println
Rezultatul de mai jos a fost scris pe stderr.
package main
func main() {
println("Ana are", 3, "mere")
println(2.5, true)
print("fără", "spații", 42, "\n")
}
Rezultat
Ana are 3 mere
2.5 true
fărăspații42
Exemplul 2: Varianta recomandată cu fmt
package main
import "fmt"
func main() {
fmt.Println("Ana are", 3, "mere")
fmt.Println(2.5, true)
fmt.Printf("%.2f lei\n", 2.5)
}
Rezultat
Ana are 3 mere
2.5 true
2.50 lei
Greșeli frecvente
- Folosirea lui
printlnpentru rezultatul programului: merge pe stderr, deci nu apare când redirecționezi ieșirea (program > rezultat.txt). printlncu un struct:illegal types for operand: println. Cu un slice compilează, dar afișează ceva ca[2/2]0x14000012345. Foloseștefmt.Println.
Comenzi înrudite
package și pachetul main: Fiecare fișier Go începe cu package; pachetul main cu funcția main() devine un program executabil.tipuri de bază: Tipurile simple din Go: bool, string, întregi cu și fără semn, numere reale, complexe, byte și rune.