欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

go语言入门基础(变量声明和常量使用)

程序员文章站 2022-11-06 11:16:55
最近慢慢开始接触go语言,感觉这门21世纪的C语言非常的喜欢,开始尝试学习的一点笔记,和大家分享下,往各位大佬指点!–第一天基础命令Go run hello.go直接打印该文件语句Go build 编译该文件为exe可执行文件。Go build -o xxxxx.exe编译为自定义名字的exek可执行文件。在windows系统下面编译linux下执行的文件的命令如下依次执行,最后go build下。Go语言基础声明变量,代码如下package mainimport “fmt”func...

最近慢慢开始接触go语言,感觉这门21世纪的C语言非常的喜欢,开始尝试学习的一点笔记,和大家分享下,往各位大佬指点!

基础命令
Go run hello.go直接打印该文件语句
Go build 编译该文件为exe可执行文件。
Go build -o xxxxx.exe编译为自定义名字的exek可执行文件。
在windows系统下面编译linux下执行的文件的命令如下

依次执行,最后go build下。

Go语言基础声明变量,代码如下

package main

import "fmt"

//定义两个指定类型返回值的函数
func foo()(string,int)  {
	return "alex",9000
}

func main(){
var name string
var age int
//声明变量必须使用
fmt.Println(name)
fmt.Println(age)

//批量声明
var (
	a string //""
	b int //0
	c bool //false
	d string //""
)
//变量赋值,必须和上面初始化时的类型一直
a = "沙河"
b = 100
c = true
d = "100"

fmt.Println(a,b,c,d)


var x string = "五开"
fmt.Println(x)
fmt.Printf("%s初学go语言! %d",x,b) //%s暂位符
//类型推导
//编译器根据变量初始值的类型,指定给变量
var y =200
fmt.Println(y)

//简短变量声明(只能在函数内部使用)
nazha := "嘿嘿嘿额!"
fmt.Println(nazha)  //var nazha string = "嘿嘿嘿额!"

//调用foo函数  
aa,_ := foo()  //_表示匿名暂位符,用于接收不需要的变量值
fmt.Println(aa)

} 
  • 最后变量名不能重复声明

常量

相对于变量,常量是恒定不变的值,多用于定义程序运行期间不会改变的那些值。 常量的声明和变量声明非常类似,只是把var换成了const,常量在定义的时候必须赋值。

const pi = 3.1415
const e = 2.7182 

声明了pi和e这两个常量之后,在整个程序运行期间它们的值都不能再发生变化了。

多个常量也可以一起声明:

const (
    pi = 3.1415
    e = 2.7182
) 

const同时声明多个常量时,如果省略了值则表示和上面一行的值相同。 例如:

const (
    n1 = 100
    n2
    n3
) 

上面示例中,常量n1、n2、n3的值都是100。

iota
iota是go语言的常量计数器,只能在常量的表达式中使用。

iota在const关键字出现时将被重置为0。const中每新增一行常量声明将使iota计数一次(iota可理解为const语句块中的行索引)。 使用iota能简化定义,在定义枚举时很有用。

举个例子:

const (
		n1 = iota //0
		n2        //1
		n3        //2
		n4        //3
	) 

几个常见的iota示例:
使用_跳过某些值

const (
		n1 = iota //0
		n2        //1
		_
		n4        //3
	) 

iota声明中间插队

const (
		n1 = iota //0
		n2 = 100  //100
		n3 = iota //2
		n4        //3
	)
	const n5 = iota //0 

定义数量级 (这里的<<表示左移操作,1<<10表示将1的二进制表示向左移10位,也就是由1变成了10000000000,也就是十进制的1024。同理2<<2表示将2的二进制表示向左移2位,也就是由10变成了1000,也就是十进制的8。)

const (
		_  = iota
		KB = 1 << (10 * iota)
		MB = 1 << (10 * iota)
		GB = 1 << (10 * iota)
		TB = 1 << (10 * iota)
		PB = 1 << (10 * iota)
	) 

多个iota定义在一行

const (
		a, b = iota + 1, iota + 2 //1,2
		c, d                      //2,3
		e, f                      //3,4
	) 

本文地址:https://blog.csdn.net/weixin_43748530/article/details/107969012

相关标签: go