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 ...
随机推荐
- WSGI-mini-web框架服务器
前期准备: 安装python环境安装pycharm安装MySQL数据库安装pymsql创建一个学生表,存入数据我们只是实现一个非常简单的web服务,前端页面不会专门做页面文件,会在代码中以具体命令的形 ...
- MySQL敏感数据加密及解密
大数据时代的到来,数据成为企业最重要的资产之一,数据加密的也是保护数据资产的重要手段.本文主要在结合学习通过MySQL函数及Python加密方法来演示数据加密的一些简单方式. 1. 准备工作 为了便于 ...
- 五分钟学Java:如何学习Java面试必考的JVM虚拟机
原创声明 本文首发于微信公众号[程序员黄小斜] 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 本文思维导图 为什么要学习JVM虚拟机 最近的你有没有参加Java面试呢?你有没有发现,Java ...
- (转).balignl 16,0xdeadbeef浅析
原文地址:http://zqwt.012.blog.163.com/blog/static/12044684201031102956976/ 最近在分析u-boot的源代码,看到这一行: .balig ...
- iview Checkbox 多选框 单个的时候 如果需要change 以后进行赋值 就要用value 不要用v-modal 然后用updateModel 方法
noSuchSituationSetFalse () { this.noSuchSituationOne = false this.$refs.noSuchSituationRef.updateMod ...
- 如何在vue中修改动态标签中的样式和修改组件库样式
vue中修改动态标签中的样式和修改组件库样式 因为vue中的标签在渲染的时候,都会给标签加上id 所以你想在<style lang="scss" scoped>直接修改 ...
- 都2020年了 还要学JSP吗?
前言 2020年了,还需要学JSP吗?我相信现在还是在大学的同学肯定会有这个疑问. 其实我在18年的时候已经见过类似的问题了「JSP还应该学习吗」.我在18年发了几篇JSP的文章,已经有不少的开发者评 ...
- System.Text.Json 序列化对所有 JSON 属性名称使用 camel 大小写
asp.net core3.x 新增的序列号接口System.Text.Json 序列化时,如果要对所有 JSON 属性名称使用 camel 大小写 将 JsonSerializerOptions.P ...
- hdu3368 dfs 下棋
两颗黑子之间的白子可以翻装成黑子,两颗白子之间的黑子可以翻转成白子,对于一个给定位置,有八个方向有翻转其他颜色的子的可能.规则之一是下棋的位置一定要能翻转对方的子. 求最优情况:黑子能翻转的白子个数的 ...
- 题解 P4325 【[COCI2006-2007#1] Modulo】
第\(1\)种方法 也是最暴力的一种 我们熟知,\(c++\)中的\(set\)可以既去重,有排序,这题,我们可以用set来搞,虽然我们不需要排序的功能,但毕竟方便,一共是\(10\)个数,所以暴力一 ...