Go Printing to Stdout and Stderr: Difference between revisions
Jump to navigation
Jump to search
(→%v) |
|||
Line 27: | Line 27: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<code>Print()</code> expects a format specifier (or a format string) as the first argument, which contains conversion characters (ex. <code>%s</code>): | <code>Print()</code> expects a format specifier (or a format string) as the first argument, which contains conversion characters (ex. <code>%s</code>): | ||
===<tt>%v</tt>=== | |||
<code>%v</code> renders the value in a default format. When printing structs, the plus flag <code>%+v</code> adds field names. | |||
<code>%#v</code> renders a Go-syntax representation of the value. | |||
===<tt>%T</tt>=== | |||
<code>%T</code> renders a Go-syntax representation of the type of the value. | |||
===Strings=== | ===Strings=== | ||
<syntaxhighlight lang='go'> | <syntaxhighlight lang='go'> |
Revision as of 00:18, 16 September 2023
Internal
Bootstrapping Functions
Both print()
and println()
are pre-declared functions, ready to use without any import.
TODO: https://golang.org/ref/spec#Bootstrapping
print()
println()
func main() {
println("something")
}
fmt Functions
fmt.Printf()
import "fmt"
// ...
fmt.Printf("something %s", "blue")
Print()
expects a format specifier (or a format string) as the first argument, which contains conversion characters (ex. %s
):
%v
%v
renders the value in a default format. When printing structs, the plus flag %+v
adds field names.
%#v
renders a Go-syntax representation of the value.
%T
%T
renders a Go-syntax representation of the type of the value.
Strings
color := "blue"
fmt.Printf("The color is %s\n", color)
Integers
size := 1
fmt.Printf("The size is %d\n", size)
Characters
c := 'x'
fmt.Printf("The character is %c\n", c)
Booleans
b := true
fmt.Printf("The boolean value is %t\n", b)
Floating Point Numbers
f := 1.0
fmt.Printf("The floating point value is %f\n", f)
Pointers
s := "something"
sPtr := &s
fmt.Printf("pointer value: %p\n", sPtr)
"%p"
prepend the "0x" prefix.
Pointers can be also represented using "%X"
(base 16, upper case characters).