Go语言笔记(1)变量的定义与赋值
变量的定义与赋值
在go笔记系列开始之前,我强烈建议大家使用Goland的IDM,配合vscode使用真的非常亲民。
1.go程序基本结构
首先,是go程序的基本结构,主要有package引入包、import调用和func定义函数。例:
- package main
- //使用ctrl + /可以快速注释
- import "fmt"
- func main() {
- fmt.println("hello world!")
- } //使用/* */可以多行注释
其中,import导入了系统所需要的包(fmt即format,标准输入输出格式包)。
当然,go语言不会要求你在敲写代码的时候必须手动引入系统需要的包,在函数中使用包的功能时,会自动弹出,并且自动写上该有的import语句。
2.函数的定义方式(包含变量声明与定义):
观摩此段代码:
- func main() {
- //##变量的定义和赋值
- //#声明var 变量名 数据类型
- var a int
- //#定义/赋值 " = "
- a = // <-如果没有初始值,则自动为" 0 "
- fmt.Println(a)
- //数据类型:布尔型、整型、浮点型、字符型、字符串类型
- }
一个函数的基本结构就是
此处,我们在函数中尝试声明go语言生涯中的第一个变量,使用的是 var name type,name处填写变量的名字,type处显而易见是变量类型。当然,我们也可以用小学二年级就学过的右值左传法为变量赋值(var a int = 1),如果声明变量后没有赋值,则保持值为零(图中我们赋值10给变量a)。经过fmt.Println(a)终端显示10。(如果要打印多个内容请将字符型数据用引号括起来,跟一个逗号,然后接上其他数据,如下图的下方代码)
- fmt.Println("面积为:",S)
- fmt.Println("周长为:",G)
如果想暂时不适用函数可以改变func main() {}的main为其他,这样package引入的main找到主函数不是该函数自然不会运行,这里我习惯在main后面添加数字表示顺序。
3.顺便提一下全局变量
全局变量顾名思义,定义在函数外头,因为影响范围特别大,不需要考虑要不要声明在函数之前,如下:
- //关于全局变量的定义
- func main4567() {
- fmt.Println(a) //全局变量影响范围特别大 一般不会受顺序影响
- }
- var a int =
4.全局代码预览
Go语言笔记(1)变量的定义与赋值的更多相关文章
- Go语言笔记 (2) 变量命名与多重赋值
变量命名 1.大小写 观摩以下代码: func main() { var m int = "你" var M int = "我" fmt.Println(m,M ...
- ES6学习笔记之变量的解构赋值
变量的解构赋值 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构. 数组的解构赋值 以前,为变量赋值,只能直接指定值: 1 2 3 var a = 1; var b = 2; ...
- Mysql 临时变量的 定义 和 赋值 Set 和 Into 赋值; Swith Mysql版本 Case When的用法
一:临时变量的定义和赋值 DECLARE spot SMALLINT; -- 分隔符的位置 DECLARE tempId VARCHAR(64); -- 循环 需要用到的临时的Cid DECLARE ...
- go变量的定义并赋值
变量在定义时没有明确的初始化时会赋值为_零值_. 零值是: 数值类型为 `0`, 布尔类型为 `false`, 字符串为 `""`(空字符串). package main impo ...
- Makefile笔记之一 ------ 变量的引用及赋值
1.变量的引用方式: "$(变量名)"或者"¥{变量名}" 例如: ${Objs}就是取变量Objs的值 注意: 当变量名为单字符是可以采用:"$a& ...
- SQL SERVER中变量的定义、赋值与使用
本文面向对SQL SERVER中变量操作不熟悉的用户,希望能使他们在看完本文后能对变量操作有具体和全面的认识. 在学习SQL SERVER的过程中,很多时候需要对某些单独的值进行调试,这时就需 ...
- Oracle变量的定义、赋值及使用
首先我们来看看代码,然后我们在说明和解释代码: declare l_dept ; currtime date := sysdate; l_nam ) :),'yyyymmdd'); -- to_cha ...
- oracle 的变量的定义和赋值
第一种 :先定义后赋值 代码 : declare V_AgeingType varchar2(500); begin V_AgeingType :='111'; end 第二种 ...
- Go语言学习笔记1 变量,类型以及赋值
1.变量 1.1 声明变量 使用var关键字可以创建一个指定类型的变量: var i int = 0 var i = 0 var i int 以上三个表达式均是合法的,第三个表达式会将i初始化为int ...
随机推荐
- python使用while循环实现九九乘法表
a = 1while a <= 9: b = 1 while b <= a: print("%d*%d=%d\t" % (b, a, a * b), end=" ...
- vs code开发python时找不到当前目录下的文件、UnicodeDecodeError: 'gbk'
一.vs code开发python时找不到当前目录下的文件, file = open("readme.txt")一直报错,找不到目录下面的文件 原来vscode 默认都是以打开的项 ...
- 如何找回微信小程序源码?2020年微信小程序反编译最新教程 小宇子李
前言:在网上看了找回微信小程序源码很多教程,都没法正常使用.微信版本升级后,会遇到各种报错, 以及无法获取到wxss的问题.查阅各种资料,最终解决,于是贴上完整的微信小程序反编译方案与教程. 本文章仅 ...
- c strncpy 容易出错的地方
使用strncpy的是注意两点,目的是数组和目的是指针 .目的是数组: ] = "abcde"; // ] = "; strncpy(dest,src,N); dest[ ...
- Spring扩展:替换IOC容器中的Bean组件 -- @Replace注解
1.背景: 工作中是否有这样的场景?一个软件系统会同时有多个不同版本部署,比如我现在做的IM系统,同时又作为公司的技术输出给其他银行,不同的银行有自己的业务实现(比如登陆验证.用户信息查询等) ...
- java之AQS和显式锁
本次内容主要介绍AQS.AQS的设计及使用.ReentrantLock.ReentrantReadWriteLock以及手写一个可重入独占锁 1.什么是AQS? AQS,队列同步器AbstractQu ...
- git常用命令学习配详细说明
原文链接 把当前目录变成Git可以管理的仓库 git init 查看仓库当前的状态 git status 添加新/变动文件 git add <文件名> // 添加某个新文件(目录) git ...
- Journal of Proteome Research | Proteomic Profiling of Rhabdomyosarcoma-Derived Exosomes Yield Insights into Their Functional Role in Paracrine Signaling (解读人:孙国莹)
文献名:Proteomic Profiling of Rhabdomyosarcoma-Derived Exosomes Yield Insights into Their Functional Ro ...
- Centos7配置IP地址和DNS
目录 一.查看IP地址 1.ifconfig命令 2.ip addr命令 二.配置网卡 1.动态IP地址 2.静态IP地址 3.重启网卡 三.注意事项 四.本地虚拟机设置静态IP后不能上网的解决方法 ...
- [最短路,floyd] Codeforces 1202B You Are Given a Decimal String...
题目:http://codeforces.com/contest/1202/problem/B B. You Are Given a Decimal String... time limit per ...