日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

go语言复数包_go语言学习之包和变量详解

發(fā)布時間:2025/3/20 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 go语言复数包_go语言学习之包和变量详解 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言

本文主要介紹了關于go語言之包和變量的相關內(nèi)容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。

一、包的概念

包是go語言中不可缺少部分,在每個go源碼的第一行進行定義,定義方式是:package "包名",并且該名稱是作為調(diào)用該包時候所使用的名稱。

包的概念總結:

每個 Go 文件都屬于且僅屬于一個包。一個包可以由許多以 .go 為擴展名的源文件組成,因此文件名和包名可能不同,為了規(guī)范,功能相似或者屬于相同性質(zhì)的源碼歸集到相同的包名中。

每個應用程序都必須有且只有一個包名稱為main,他是該程序的入口,執(zhí)行時候會尋找包名為main的代碼

包與包之間可以被相互調(diào)用,主要為了減少代碼重復性

包一旦被引入就需要被使用,除非引入的時候忽略它(前面加_表示忽略它,只是用它來初始化),如果引入了包,而在代碼中沒用使用,運行時候會報錯

二、包的引入

1.包引入的方法

方法一:

import "fmt"

import "os"

方法二:

import "fmt"; import "os"

方法三(推薦!)

import (

"fmt"

"os"

)

2.引入其他包

go語言中,引入包的路徑是根據(jù)GOPATH/src 這個環(huán)境變量作為相對路徑進行引入的,如果GOPATH存在多個,那么go將逐一尋找路徑,直到找到,若GOPATH/src未找到則編譯出錯。

示例:

我的GOPATH為:C:\Users\17647\Desktop\go_work\src

首先建立包文件1:C:\Users\17647\Desktop\go_work\src\day02\eg1\pkg.go(相對于GOPATH/src的路徑為day02\eg1\pkg.go)

內(nèi)容如下:

package add

import "fmt"

func Sum(a int,b int) {

var c int

c = a + b

fmt.Println("res",c)

}

在main進行引入如下:

package main

import (

"fmt"

"day02/eg1" /* 引入包 */

)

func main() {

add.Sum(2,3) /* 調(diào)用包 */

fmt.Println("Hello, World!")

}

圖示:

二、變量

1.單個變量的聲明

go語言中,所有變量都必須先聲明在使用,下面是聲明變量和賦值方法:

先聲明后賦值: var ???????? 賦值:變量的賦值格式: =

聲明的同時賦值:var = ?? (簡寫為 變量名稱 :=? 表達式)

示例:

package main

import "fmt"

func main() {

var a string /* 聲明一個變量名為a,類型為字符串的變量 */

a = "wd" /* 對a變量賦值*/

var age int = 22 /* 聲明并賦值變量 */

fmt.Println(a,age)

}

2.多個變量聲明

先聲明后賦值:var ,,? ???? 賦值 : , =? 值1,值2

聲明同時賦值 :var? , = 值1,值2?? 可簡寫為: , = 值1,值2

多個變量還可以使用var()聲明

示例:

package main

import "fmt"

func main() {

var a,b int

a,b = 1,2

var c,d = 3,"wd" /* 類型自動推斷 */

e, f := 4, "hello" /* 簡寫 */

fmt.Println(a,b,c,d,e,f)

}

使用var()聲明

package main

import "fmt"

func main() {

var (

a int //默認值為0

b string // 默認值為空字符串("")

c = 3

)

fmt.Println(a,b,c)

}

3.變量名

命名原則:

首字符可以是任意的Unicode字符或者下劃線

剩余字符可以是Unicode字符、下劃線、數(shù)字

不能作為用以下關鍵字作為變量名

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

4.可見性

可見性即對包外可見,當其他包調(diào)用當前包的變量時候是否允許可見(可訪問)。

變量開頭字符大寫,表示可見

變量開頭字母非大寫,則表示私有,不可見

5.變量的作用域

函數(shù)內(nèi)定義的變量稱為局部變量,其作用域在函數(shù)內(nèi)

函數(shù)外定義的變量稱為全局變量,作用于整個包,并且該變量首字母大寫,則對其他包可見。

三、常量

常量是一個簡單值的標識符,在程序運行時,不會被修改的量。

常量中的數(shù)據(jù)類型只可以是布爾型、數(shù)字型(整數(shù)型、浮點型和復數(shù))和字符串型。

定義常量語法:

const 名稱 類型 = value

多個常量定義語法:

const (

a = 0 //類型自動推倒

b = 1

c = 2

)

iota解釋:

iota,特殊常量,可以認為是一個可以被編譯器修改的常量。

在每一個const關鍵字出現(xiàn)時,被重置為0,然后再下一個const出現(xiàn)之前,每出現(xiàn)一次iota,其所代表的數(shù)字會自動增加1。

iota 可以被用作枚舉值:

const (

a = iota

b = iota

c = iota

)

第一個 iota 等于 0,每當 iota 在新的一行被使用時,它的值都會自動加 1;所以 a=0, b=1, c=2 可以簡寫為如下形式:

const (

a = iota

b

c

)

用法:

package main

import "fmt"

func main() {

const (

a = iota //0

b //1

c //2

d = "ha" //獨立值,iota += 1

e //"ha" iota += 1

f = 100 //iota +=1

g //100 iota +=1

h = iota //7,恢復計數(shù)

i //8

)

fmt.Println(a,b,c,d,e,f,g,h,i)

}

總結

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

《新程序員》:云原生和全面數(shù)字化實踐50位技術專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的go语言复数包_go语言学习之包和变量详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。