1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package main
import (
"fmt"
)
type III interface{}
type A struct {
i int
}
func main() {
//var m []string
var ia interface{}
ia = 8
var ib III
ib = 9
ib = ia
var a A
var b struct {
i int
}
b.i = 99
a = b
b.i = 55
fmt.Println("Hello, playground", ia, ia == nil, ib, ib == nil, 10, a.i, b.i)
c := &a
d := &b
c.i = 111
d.i = 222
fmt.Println(a.i, b.i)
*c = b
fmt.Println(a.i, b.i)
var e *int
fmt.Println(e)
i := 666
e = &i
fmt.Println(e, *e)
}