funcmain() { var x int = 123 var y string = "114-514" var z string = "Code=%dDate=%s" var url = fmt.Sprintf(z, x, y) fmt.Println(url) fmt.Printf(z, x, y) }
两种输出方法,使用Sprintf的时候是将值赋给一个变量再使用fmt进行输出的。
数据类型
还是和C之类的差不多的数据类型,不做赘述。 常规方式
1 2 3
var a int = 123 var b bool = false var c = "xv33233"
使用:=声明变量
1 2
xv := 123 fmt.Println(xv)
条件与循环语句
if条件
1 2 3 4 5 6 7 8 9 10
funcmain() { xv := 123 if xv < 100 { fmt.Println("Less than 100!") fmt.Printf("The value of xv is :%d", xv) } else { fmt.Println("Bigger than 100!") fmt.Printf("The value of xv is :%d", xv) } }
switch和C同理
for循环
1 2 3 4 5 6 7 8 9 10 11 12 13 14
funcmain() { sum := 0 for i := 0; i <= 10; i++ { sum += i } fmt.Printf("The value of sum : %d", sum) }
funcmain() { numbers := [5]int{1, 2, 3, 4, 5} for i := range numbers { fmt.Println(numbers[i]) } }
函数
1 2 3 4 5 6 7
funcmax(x int, y int)int { if x > y { return x } else { return y } }
指针
注意和C语言不同的地方在于,不能使用&array_name来访问数组首元素的地址。
1
var p *int
空指针:nil
结构体
1 2 3 4 5 6 7 8 9 10
type Books struct { title string author string isbn int }