第004天:go语言变量声明赋值

第004天:go语言变量声明赋值,第1张

前言

本人主学的Java网络安全方向,但是参加实习后(安全研究工程师),发现大多数需求来自python和go,Java也有但是很少,公司更愿意接受会go的帅小伙,所以打算每天拿出一个小时来学习一下go语言。

文章目录 前言变量与常量为啥有变量??变量的类型变量声明赋值


变量与常量

标识符:
标识符就是程序猿们所定义的有一定特殊含义的字符。在golang里标识符是由字母数字加上下划线组成的,而且规定只能是字母和下划线打头。
关键字:
就是有特殊含义的标识符。一共25个关键字。

还有一种就是保留字,一共37个。

这两者都不建议去用作变量名。

为啥有变量??

为啥会有变量???人为啥要有名字???其实是一个道理。程序中有各种各样的数据,数据都保存在内存当中,如果说我们要对其中某个数据就是变量,去执行一定的 *** 作,是不是就得先找到数据。在一堆数据找某个数据,就像在人群找人,喊了一声那个谁!!!就会找不到或者很容易出错。所以说我们就用变量来标识这个数据的内存地址,通过这个变量就可以找到数据。就像通过名字找到某个人。

变量的类型

变量来源于数学,是计算机语言中能储存计算结果或能表示值的抽象概念。
变量可以通过变量名访问。在指令式语言中,变量通常是可变的;但在纯函数式语言(如Haskell)中,变量可能是不可变的。
在一些语言中,变量可能被明确为是能表示可变状态、具有存储空间的抽象(如在Java和Visual Basic中);但另外一些语言可能使用其它概念(如C的对象)来指称这种抽象,而不严格地定义“变量”的准确外延。
由于变量让你能够把程序中准备使用的每一段数据都赋给一个简短、易于记忆的名字,因此它们十分有用。变量可以保存程序运行时用户输入的数据(如使用InputBox函数在屏幕上显示一个对话框,然后把用户键入的文本保存到变量中)、特定运算的结果以及要在窗体上显示的一段数据等。简而言之,变量是用于跟踪几乎所有类型信息的简单工具。
变量声明后没有赋值的话,编译器会自动提示并赋予默认值。
变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储Script运行时可更改的程序信息。例如,可以创建一个名为Click Count的变量来存储用户单击Web页面上某个对象的次数。使用变量并不需要了解变量在计算机内存中的地址,只要通过变量名引用变量就可以查看或更改变量的值。在VB Script中只有一个基本数据类型,即Variant,因此所有变量的数据类型都是Variant。

以上这段话来自百度百科,感谢百度百科🙇‍
常见的类型就是浮点型,整型,布尔型等等。

变量声明赋值

在golang中变量必须先声明,后使用。而且非全局变量声明了就必须使用,不能抛弃。
声明格式:

var 变量名 变量类型
举几个例子:
var name string
var age int
var msjsi bool

如果需要很多变量,可以一次性批量声明。

var (
    name string
    age int
    msjsi bool
)

变量声明之后,就是初始化赋值。

func main() {
	name = "工作"
	age = 18
	msjs = false
	//变量不使用爆红
	fmt.Printf("name:%s", name)
	fmt.Println(age)
	fmt.Print(msjs)
}


大家会看到输出,有点东西。
输出有三种

fmt.Printf("name:%s", name)//%s占位符
fmt.Println(age)//打印输出后换行
fmt.Print(msjs)//直接打印输出

声明变量同时赋值

var a1 string="wyd"

进行类型推导,根据赋的值推导该变量什么类型

var a2 ="20"
fmt.Println(a2)

短变量声明

a3 :="撒丁岛"
fmt.Pringtln(a3)

匿名变量
不想要的变量赋值给下划线,为了不报错。
匿名变量不占用命名空间,不会分配内存,所以匿名变量之间不存在重复声明。
注意事项:
函数外的语句必须以关键字打头(var,const,func等)
:=不能在函数外声明
下划线多用于占位。表示忽略值

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/990647.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存