golang 面試題目

golang 面試題目

1 new 和make 有什么區(qū)別

  new 初始化T類型的零值,返回指針
  make 初始T 類型, 返回T類型

2 變量類型不攜帶任何信息且是0 值。 地址是否相同?

    s := struct {}{}
    d := [0]int{}
    if unsafe.Pointer(&s) == unsafe.Pointer(&d) {
        fmt.Println("same adress")
    } else {
        fmt.Println("not same adress")
    }
  result: same adress

3 變量逃逸

當變量(或者對象)在方法中分配后,其指針被返回或者被全局引用(這樣就會被其他過程或者線程所引用),這種現(xiàn)象稱作指針(或者引用)的逃逸(Escape)。

4 隱式賦值,下面的輸出結(jié)果可能會是什么

func assginParameter() (ret int){
   i := 0
   ret = 0
   for i < 3 {
       go func() {
           time.Sleep(1)
           fmt.Println("get value %v", ret)
       }()
       i++
   }
   return 1
}

func TestInterface2(t *testing.T) {
   assginParameter()
   time.Sleep(3)
}

隱式賦值返回值
0 0 0
0 0 1
0 1 1
1 1 1

5 包級變量初始化循序

var a = b + c
var b = f()
var c = 1

func f() int {
    return 100
}

func TestInterface2(t *testing.T) {
    fmt.Println(a , b , c )
}

101 100 1
包級別的變量按照聲明順序初始化, 在依賴解析完畢的情況下 ,根據(jù)依賴的順序進行。
包的初始按照導入的順序進行。

5 變量作用域生命周期怎么區(qū)分

作用域: 編譯屬性
生命周期 : 運行期屬性。

   var a = 0
    if true {
        a,b := 1, 5
        fmt.Print(a, b)
    }
    fmt.Print(a)


    if true {
        b := 0
        a,b = 2, 5
        fmt.Println(a, b)
    }
    fmt.Println(a)
0 1 5 0  2 5 2

考察 := 對外圍重名賦值的覆蓋問題。

6 字符串s , 則s[0] 表示什么

第一個字節(jié)? 第一個字符?
答案: 第一個字符( 一個字符根據(jù)不同編碼可能對應多個字節(jié))

7 字符串內(nèi)容永遠不可變:

s := "12345"
 s[0] = ‘0’ // 編譯錯誤?。?! 

8 slice 是否可以做map的key 為什么

slice 不可以做slice 的key, slice 沒有 “ == ” 操作

9 在go 中() 是面向?qū)ο缶幊谭绞降暮诵?/h3>

A 組合 B 繼承
答: A

9 go 語言的函數(shù)調(diào)用棧可達多少(其他語言 64K - 2MB)?

go 的函數(shù)調(diào)用??勺冮L,最多可達 1GB 左右

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容

  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,195評論 0 13
  • 出處---Go編程語言 歡迎來到 Go 編程語言指南。本指南涵蓋了該語言的大部分重要特性 Go 語言的交互式簡介,...
    Tuberose閱讀 18,492評論 1 46
  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,436評論 0 5
  • 最近的一部都市生活情感劇《歡樂頌》爆火,周圍的朋友都在追,我也不例外! 它圍繞五個成長環(huán)境不同、生活閱歷不同、性格...
    伊晴_dream閱讀 689評論 0 2
  • 1. 學習之后要時時復習,才能把知識記牢 2.學了知識,還需要有適當?shù)臅r機練習、實踐,在實踐中修練自我意識,才能成...
    梁波林閱讀 497評論 0 0