golang中的byte、string、rune知多少?

如题,在解释三者差别之前,我们先看一个实例:

package main
import (
	"fmt"
func main() {
	c := "是谁在看我呢QAQ"
	fmt.Println(c, fmt.Sprintf("len: %d", len(c)))
	fmt.Println([]byte(c), fmt.Sprintf("len: %d", len([]byte(c))))
	fmt.Println([]rune(c), fmt.Sprintf("len: %d", len([]rune(c))))