array和defer

This commit is contained in:
wandoubaba 2024-11-15 14:36:29 +08:00
parent 51b414411b
commit 9913b3ccae
4 changed files with 96 additions and 0 deletions

View File

@ -0,0 +1,42 @@
package main
import "fmt"
func printArray(myArray [4]int) {
for index, value := range myArray {
fmt.Println("index = ", index, ", value = ", value)
}
}
func printArray2(myArray []int) {
for _, value := range myArray {
fmt.Println("value = ", value)
}
}
func main() {
var myArray1 [10]int
fmt.Println(myArray1)
for i := 0; i < len(myArray1); i++ {
fmt.Println(myArray1[i])
}
myArray2 := [10]int{1, 2, 3, 4}
for index, value := range myArray2 {
fmt.Println("index = ", index, ", value = ", value)
}
myArray3 := [4]int{11, 22, 33, 44}
fmt.Printf("myArray1 type is %T\n", myArray1)
fmt.Printf("myArray2 type is %T\n", myArray2)
fmt.Printf("myArray3 type is %T\n", myArray3)
// printArray(myArray2)
printArray(myArray3)
myArray := []int{1, 2, 3, 4}
fmt.Printf("myArray type is %T\n", myArray)
printArray2(myArray)
}

View File

@ -0,0 +1,11 @@
package main
import "fmt"
func main() {
defer fmt.Println("main end1")
defer fmt.Println("main end2")
fmt.Println("main::hello go 1")
fmt.Println("main::hello go 2")
}

View File

@ -0,0 +1,21 @@
package main
import "fmt"
func func1() {
fmt.Println("A")
}
func func2() {
fmt.Println("B")
}
func func3() {
fmt.Println("C")
}
func main() {
defer func1()
defer func2()
defer func3()
}

View File

@ -0,0 +1,22 @@
package main
import "fmt"
func deferFunc() int {
fmt.Println("defer func called ...")
return 0
}
func returnFunc() int {
fmt.Println("return func called ...")
return 0
}
func returnAndDefer() int {
defer deferFunc()
return returnFunc()
}
func main() {
returnAndDefer()
}