0


【区块链Go】基础语法

** 往期文章**

[区块链go]windows系统中安装Go与环境变量配置

[区块链Go]Vscode编写工具与main()函数


关键字

Go语言中的基础类型关键字大致有25个:

break

default

func

interface

select

case

defer

go

map

struct

chan

else

goto

package

switch

const

fallthrough

if

range

type

continue

for

import

return

var

关键字:作为go语言中重要的组成部分,在各种数据声明,数据执行中都有很多使用的地方。

关键字释义:

  • var和const:变量和常量的声明
    
  • package and import:导入
    
  • func:用于定义函数和方法
    
  • return:用于从函数返回
    
  • defer someCode:在函数退出之前执行
    
  • go:用于并行
    
  • select:用于选择不同类型的通讯
    
  • interface:用于定义接口
    
  • struct:用于定义抽象数据类型
    
  • break、case、continue、for、fallthrough、else、if、switch、goto、default流程控制
    
  • chan用于channel通讯
    
  • type用于声明自定义类型
    
  • map用于声明自定义类型
    
  • range用于读取slice,map, channel数据
    

package main   //包的声明

package main 代表当前的 .go文件属于哪个包,其中 package 是 Go 语言声明包的关键字,main 是要声明的包名。package main表示一个可独立执行的程序,每个 Go 应用程序都包含一个名为 main 的包。

变量

package main
import "fmt"
func main(){
    var name string = "hello world"
    name = "Merry Christmas, Mr Lawrence"
    fmt.Println(name)
}

变量使用var 进行定义 变量名后面 写上类型 然后再进赋值

var 变量名 变量类型 = 值

局部变量

package main
import "fmt"

func main(){    
    var Name string = "hello world"
//函数内部声明的变量只能在函数内被使用
    fmt.Println(Name)
}

在函数体内声明的变量称为局部变量,函数的参数和返回值变量都属于局部变量。局部变量一定是在函数内部。在哪个{}内部声明,只能在哪个{}内部访问。局部变量不是一直存在的,它只在定义它的函数被调用后存在,函数调用结束后这个局部变量就会被销毁。

全局变量

package main
import "fmt"
//外不定义变量 全局变量
var Name string = "hello world"
func main(){    

    fmt.Println(Name)
}

全局变量声明:在函数体外声明的变量称之为全局变量。全局变量声明必须以 var 关键字开头,如果想要在外部包中使用全局变量的首字母必须大写。全局变量声明到函数外部,整个包都可以访问。如果全局变量首字母大写,跨包也可以访问.。

常量

显式声明

package main
import "fmt"
const age int = 12
var Name string = "hello world"
func main(){    

    fmt.Println(age)
}

常量是用 const 进行声明的,

const 常量名 常量类型 = 值

常量的声明以关键字const开头,后接常量类型并进行赋值,行尾没有其他标点符号。需要注意的是常量在定义的时候必须赋值,但不能使用短变量声明关键字 := 来定义常量。

隐式声明

package main
import "fmt"
const age  = 12
var Name string = "hello world"
func main(){    

    fmt.Println(age)
}

把定义的类型取消掉就好。

const 常量名 = 值

由于Go是编译型语言,定义常量时可以省略常量类型,因为编译器可以根据变量的值来推断其类型。常量声明可以同时指定类型和值,如果没有显式指定类型,则类型根据右边的表达式推断。

**作用域跟变量一样分为局部常量和全局常量 这里就不做解释了 **


本文转载自: https://blog.csdn.net/m0_62360527/article/details/127444076
版权归原作者 坚毅的小解同志 所有, 如有侵权,请联系我们删除。

“【区块链Go】基础语法”的评论:

还没有评论