令人困惑,Go Routines 中的频道里面这是什么

问题描述

程序:

package main
import (
"fmt"
)
func main() {
ch := make(chan int)
fmt.Println(ch)
fmt.Println(0xc000062060)
}

输出

0xc00009e000
824634122336

那个输出 (824634122336) 是什么意思? 我认为 (0xc00009e000) 是一个通道的起始地址。

  • 如果(0xc00009e000 是通道地址)

    • 那请告诉我这是什么 (824634122336)
  • 其他

    • 那么请说出这些输出是什么。

解决方法

0xc00009e000824634122336 的十六进制值。所以 824634122336 不是频道中的值。

fmt.Println(0x10) //Output: 16

在软件计算中,添加“0x”前缀代表十六进制数。

参考此why-are-hexadecimal-numbers-prefixed-with-0x