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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

牛客网_Go语言相关练习_选择题(2)

發布時間:2023/11/29 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 牛客网_Go语言相关练习_选择题(2) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

注:題目來源均出自牛客網。

一、選擇題

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語言中優雅的處理錯誤

https://golang.org/pkg/builtin/

從例子中學習 go 語言 —— 基本語法

從例子中學習 go 語言 —— 數據結構、指針

Go語言中的指針運算

Go語言并發模型:使用 select

golang的select典型用法

https://github.com/golang/go/wiki/CodeReviewComments

The Go Programming Language Specification

?

三、總結

本次Go語言練習主要涉及到異常處理、集合、函數聲明、對協程的理解、字符串連接、select機制、vendor和布爾型的編碼規范。

?

總結

以上是生活随笔為你收集整理的牛客网_Go语言相关练习_选择题(2)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。