Golang学习笔记 - 05 :常量

本文介绍了Golang中常量的定义与使用,包括格式、iota的特性以及常量表达式中只能使用内置函数的限制。通过实例展示了常量如何计算len()等函数的值,并探讨了iota作为可计数常量的工作原理。然而,文章并未提及常量定义存在的具体问题。
摘要由CSDN通过智能技术生成

格式

`const identifier [type] = value``

  • 显式类型定义: const b string = "abc"
  • 隐式类型定义: const b = "abc"

定义多个变量
const c_name1, c_name2 = value1, value2
实例

package main

import "fmt"

func main() {
	const LENGTH int = 10
	//var 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)
}

常量可以用len(), cap(), unsafe.Sizeof()函数计算表达式的值。常量表达式中,函数必须是内置函数,否则编译不过

package main

import "unsafe"
const (
    a = "abc"
    b = len(a)
    c = unsafe.Sizeof(a)
)

func main(){
    println(a, b, c)
}

返回值abc 3 16
为什么c返回a的长度是16?
实际上字符串类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值