package main import "unsafe" const ( a = "abc" b = len(a) // unsafe.Sizeof 计算内存地址的 c = unsafe.Sizeof(a) ) /* iota , 特殊的常量,可以认为是一个可以被编译器修改的常量 iota 在 conts 关键字出现时被重置为0(const内部第一行之前),const 中新增一行常量声明将使 iota 计数一次 */ func main() { const ( a1 = iota a2 a3 a4 = "111" a5 = 123 ) const ( a6 = iota * 2 a7 a8 a9 ) println(a1,a2,a3,a4,a5) println(a,b,c) println(a6,a7,a8,a9) } /* 运行结果: 0 1 2 111 123 abc 3 16 0 2 4 6 */demo1
package main /* Go 语言常量 常量是一个简单值得标识符,在程序运行时,不会被修改的量 常量中的数据类型只可以是布尔, 数字类型 和 字符串 */ import "fmt" func main() { const LENGTH int = 10 const WIDTH int = 5 var area int const a, b, c = 1, false, "str" //多重赋值 area = LENGTH * WIDTH fmt.Printf("面积为 : %d", area) println() println(a, b, c) }demo2