变量使用细节(1)(一)|学习笔记

简介: 快速学习变量使用细节(1)

开发者学堂课程【Go语言核心编程 - 基础语法、数组、切片、Map:变量使用细节(1)】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/625/detail/9515


变量使用细节(1)(一)


内容介绍:

一、Golang变量使用注意事项

二、变量如何存在的演示

三、Golang变量使用的三种方式

四、多变量声明.

五、全局变量


一、Golang变量使用注意事项

Golang变量与其他语言存在区别。

1.变量表示内存中的一个存储区域

2.该区域拥有自己的名称(变量名)和类型(数据类型)

二、变量如何存在的演示

func main(){

//定义变量声明变量var i int

var i int

//给i赋值

i=10

//使用变量

fmt.Print1n("i=",i)

}

当此代码进行运行,程序执行至“var i int”位置时

内存中发生的变化:内存存在一块数据空间,同时生成变量i,i变量将直接与此数据空间关联。

var i int 未被赋值时,存在默认值0

在人为赋值后,计算机将会通过i变量的名字找到对应空间,将其重新赋值为10。

Print:进行代码的输出

所有代码欲运行必须首先加载于内存之中。


三、Golang变量使用的三种方式

1.指定变量类型,声明后若不赋值,将使用默认值

func main(){

var i int

fmt.Print1n("i=",i)

} 

//此段代表输出的进行,逗号意味着输出i=值后再次输出i值,进行两次输出

//int的默认值为0,其他数据类型默认值此后进行讲解

}

//运行至上个目录

D:\goproject\src\go_code\chapter03\demo01>cd ..

D:\goproject\src\go_code\chapter03\cd demo02

D:\goproject\src\go_code\chapter03\demo02>dir

驱动器D中的卷是 新加卷

卷的序列号是 D2AD-BC9F

D:\goproject\src\go_code\chapter03\demo02的目录

05 11:16     <DIR>

05 11:16     <dir>

05 11:17                  

192 main.go,1个文件            

192字节,2个目录            

23,137,796,096可用字节

D:\goproject\src\go_code\chapter03\demo02>go run main.go

i = 0

//默认值为0

2.根据值自行判定变量类型(类型推导)

go语言、动态编程语言的特点。java于新类型中同样加入了该特点

var num int = 10

//直接进行赋值时,此int可不进行编写。当自行赋值为如10.11时,未明确指定其类型,则计算机将进行类型推导,识别为小数,使得num转变为小数类型。给予何种类型的数据,num就会转变为何种类型。

fmt.Print1n("num=",mum)

}

//查看效果

D:\goproject\src\go_code\chapter03\demo02>go run main.go

i = 0

num = 10.11 

3.省略var,需注意:=左侧的变量不该是已声明过的,否则会导致编译错误

//声明变量。此将一个值交给一个变量的方式省略了var时,则该关键字必须使用冒号。

name = “tom”的使用是错误的,违反了先定义后使用的原则。

//此后的方式等价于var name string   name =“tom”

//以上两句可整合为一句话。即声明时同时赋值

name := “tom”

fmt.Print1n("name=",name)

}

//查看效果

D:\goproject\src\go_code\chapter03\demo02>go run main.go

i = 0

num = 10.11

name = tom

相关文章
|
20天前
|
C++
第十三问:C++中静态变量的用法有哪些?
本文介绍了 C++ 中静态变量和函数的用法及原理。静态变量包括函数内的静态局部变量和类中的静态成员变量,前者在函数调用间保持值,后者属于类而非对象。静态函数不能访问非静态成员,但可以通过类名直接调用。静态链接使变量或函数仅在定义文件内可见,避免命名冲突。
38 0
|
7月前
|
编译器 C++
《Effective C++ 改善程序与设计的55个具体做法》 第二章 构造/析构/赋值运算 笔记
《Effective C++ 改善程序与设计的55个具体做法》 第二章 构造/析构/赋值运算 笔记
《C++避坑神器·三》带参构造和初始化列表赋值区别
《C++避坑神器·三》带参构造和初始化列表赋值区别
60 0
|
存储 Linux C语言
C语言函数和指针的关系之三(完结)
C语言函数和指针的关系之三(完结)
60 0
|
安全 编译器 C语言
C++ 命名空间、域、缺省参数、函数重载、引用、auto、内联函数的知识点+完整思维导图+基本练习题+深入细节+通俗易懂建议收藏(二)
C++ 命名空间、域、缺省参数、函数重载、引用、auto、内联函数的知识点+完整思维导图+基本练习题+深入细节+通俗易懂建议收藏(二)
|
程序员 C语言 C++
C++ 命名空间、域、缺省参数、函数重载、引用、auto、内联函数的知识点+完整思维导图+基本练习题+深入细节+通俗易懂建议收藏(一)
C++ 命名空间、域、缺省参数、函数重载、引用、auto、内联函数的知识点+完整思维导图+基本练习题+深入细节+通俗易懂建议收藏(一)
|
Go vr&ar 开发者
数组注意事项和细节(2)|学习笔记
快速学习数组注意事项和细节(2)。
145 0
数组注意事项和细节(2)|学习笔记
|
Go 开发者
变量使用细节(1)(二)|学习笔记
快速学习变量使用细节(1)
|
编译器 Go 开发者
变量使用细节(2)|学习笔记
快速学习变量使用细节(2)
|
Go 开发者
switch使用细节(2)|学习笔记
快速学习switch使用细节(2)

热门文章

最新文章