注:題目**均出自牛客網。
map(集合)屬於go的內建型別,不需要引入其它庫即可使用。
go-map_菜鳥教程
在函式宣告中,返回的引數要麼都有變數名,要麼都沒有。
c選項函式宣告語法有錯誤,error是返回型別,但沒有返回名。
go語言中字串是utf-8編碼並儲存的,它語言不定長的位元組,所以它不支援下標操作,因為沒乙個下標操作代表的是固定長度的位元組,所以不能對字串中某個字元單獨賦值。
go-字串_極客學院
由panic引發異常以後,程式停止執行,然後呼叫延遲函式(defer),就像程式正常退出一樣。另外recover也是要寫在延遲函式中的,如果發生異常延遲函式就不執行了,那就永遠無法recover了。
本題考查對協程與程序的理解,b選項應該是協程比執行緒更輕量。
程序和執行緒、協程的區別
go語言的語法上是不支援指標運算的,所有指標都在可控的乙個範圍內使用,沒有c語言的*void然後隨意轉換指標型別這樣的東西。
go語言的指標 & *
字串只有兩種直接表達的形式,一種是雙引號,一種是反引號。
a選項中的反引號是中文符號,編譯肯定會報錯。
golang 的 select 就是監聽 io 操作,當 io 操作發生時,觸發相應的動作;
在執行select語句的時候,執行時系統會自上而下地判斷每個case中的傳送或接收操作是否可以被立即執行(立即執行:意思是當前goroutine不會因此操作而被阻塞);
select的用法與switch非常類似,由select開始乙個新的選擇塊,每個選擇條件由case語句來描述。與switch語句可以選擇任何可使用相等比較的條件相比,select有比較多的限制,其中最大的一條限制就是每個case語句裡必須是乙個io操作,確切的說,應該是乙個面向channel的io操作。
go語言中 select 和 switch 的比較
基本思路:將引用的外部包的源**放在當前工程的vendor目錄下面,go 1.6以後編譯go**會優先從vendor目錄先尋找依賴包。
它解決了避免專案**外部依賴過多,遷移後需要多次go get 外包依賴包;而且通過go get 重新拉去的外部依賴包的版本可能和工程開發時使用的不一致導致編譯錯誤的問題。
go vendor 介紹
布林型變數應該賦值是true和false,正確答案應該是bcd。
go編碼規範指南
go的異常處理 defer, panic, recover
go語言之 panic, recover ——如何在go語言中優雅的處理錯誤
go語言中的指標運算
go語言併發模型:使用 select
golang的select典型用法
the go programming language specification
本次go語言練習主要涉及到異常處理、集合、函式宣告、對協程的理解、字串連線、select機制、vendor和布林型的編碼規範。
牛客網(選擇題)
1.資料庫系統的體系結構是 兩級模式結構和一級映象 模式結構和一級映象 模式結構和兩級映象 模式結構和 映象 解析 概念模式 conceptual schema 是資料庫中全部資料的整體邏輯結構的描述。外模式 external schema 是使用者與資料庫系統的介面,是使用者用到的那部分資料的描述...
牛客網選擇題
2.下列哪種方式不能使程序進入就緒狀態 d a cpu排程給優先順序更高的執行緒 b 阻塞的執行緒獲得資源或者訊號 c 在時間片輪轉的情況下,如果時間片到了 d 獲得spinlock未果 程序三個狀態 執行 就緒 阻塞 等待。高優先順序的搶占cpu,使得原來處於執行狀態的程序轉變為就緒狀態。阻塞的程...
2020 6 21牛客網日常選擇題練習
解析 程序控制塊 pcb 是系統為了管理程序設定的乙個專門的資料結構。系統用它來記錄程序的外部特徵,描述程序的運動變化過程。同時,系統可以利用pcb來控制和管理程序,所以說,pcb 程序控制塊 是系統感知程序存在的唯一標誌。解析 hub,也就是集線器。它的作用可以簡單的理解為將一些機器連線起來組成乙...