变量

变量 在程序运行中可以改变的量

golang变量与常量

枚举

var (
	a3 = 1
	a4 = 2
)

golang变量与常量

 

golang不同类型变量不能替换

 

func main() {
	var a int = 10

	a = 20
	a = "20"
}

golang变量与常量

golang变量与常量

同一作用于不能重复定义变量

golang变量与常量

Golang的变量如果没有赋初值,编译器会使用默认值,比如 int 默认值0sing默认值为串

 

golang中没有char字符型,使用byte表示一个字符 ,不能表示一个汉字,go默认使用utf8编码

bool false ture

 

rune = int32 4字节

byte = uint8 1字节

32位系统4个字节-231~231-1
64位系统8个字节-263~263-1

func main() {

	var a byte = 255

	fmt.Println(a)

	var c byte = 'a'
	var d rune = '总'

	fmt.Println(c)
	fmt.Println(d)
}

golang变量与常量

 

1、Golang各整数类型分:有符号和无符号,int uint的大小和系统有关。
2、Golang的整型默认声明为int型
3、如何在程序查看某个变量的字节大小和数据类型

unsafe.sizeof占用字节数

func main() {

	var str string = "abcd"

	fmt.Println(unsafe.Sizeof(str))
}

golang变量与常量

4、Golang程序中整型变量在使用时,遵守保小不保大的原则,即:在保证程序正确运行下,尽量使用占用空间小的数据类型。【如:年龄】
5、bit:计算机中的最小存储单位。byte:计算机中基本存储单元。[二进制再详细说]

常量

常量 在程序运行中不可以改变的量

  • 常量使用const修改
  • 常量在定义时必须初始化
  • 常量定义后不能修改
  • 常量只能修饰bool、数值类型(int、float)、string类型
  • 不允许打印常量的地址
  • 字面常量是指程序中硬编码的常量定义后及为某类型(`const i = 1.3`),无需推导(无 `const PI := 3.14`)

golang中没有硬性规定常量必使用大写字母,但仍然通过首字母大小写来控制常量的访问范围

语法:

const identifier [type] = value

 

请判断一下情况是否正确:

1. const name="tom" 正确

2. const test float = 1.1 正确

3. connst num int  错,常量在定义时必须初始化

4.const b 10/2 正确,10/2在运算后为一个具体的值

5.  var a = 10  const b a 错,编译器并不知道a的值是10,认为值是一个可变的变量

 

定义:

const(
     a = 1
     b = "string"
)

 常量中的iota

package main

import (
	"fmt"
)

const (
	a = iota
	b
	c
	d
)

func main() {
	fmt.Println(a, b, c, d)
}

 golang变量与常量

每次在const 出现时,都会让 iota 初始化为0。

在一行定义const iota,这行不会递增。

package main

import (
	"fmt"
)

const (
	a = iota
	b
)

const (
	c    = iota
	d, e = iota, iota
)

func main() {
	fmt.Println(a, b, c, d, e)
}

 golang变量与常量

iota使用范围:自定义枚举类型、

 

相关文章:

  • 2022-12-23
  • 2023-04-04
  • 2021-11-13
猜你喜欢
  • 2021-06-02
  • 2021-11-02
  • 2021-12-12
  • 2021-12-23
相关资源
相似解决方案