go語言連接符,go 字符串連接

Go語言基礎語法(一)

本文介紹一些Go語言的基礎語法。

新蔡網站制作公司哪家好,找成都創新互聯!從網頁設計、網站建設、微信開發、APP開發、成都響應式網站建設公司等網站項目制作,到程序開發,運營維護。成都創新互聯2013年至今到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選成都創新互聯

先來看一個簡單的go語言代碼:

go語言的注釋方法:

代碼執行結果:

下面來進一步介紹go的基礎語法。

go語言中格式化輸出可以使用 fmt 和 log 這兩個標準庫,

常用方法:

示例代碼:

執行結果:

更多格式化方法可以訪問中的fmt包。

log包實現了簡單的日志服務,也提供了一些格式化輸出的方法。

執行結果:

下面來介紹一下go的數據類型

下表列出了go語言的數據類型:

int、float、bool、string、數組和struct屬于值類型,這些類型的變量直接指向存在內存中的值;slice、map、chan、pointer等是引用類型,存儲的是一個地址,這個地址存儲最終的值。

常量是在程序編譯時就確定下來的值,程序運行時無法改變。

執行結果:

執行結果:

Go 語言的運算符主要包括算術運算符、關系運算符、邏輯運算符、位運算符、賦值運算符以及指針相關運算符。

算術運算符:

關系運算符:

邏輯運算符:

位運算符:

賦值運算符:

指針相關運算符:

下面介紹一下go語言中的if語句和switch語句。另外還有一種控制語句叫select語句,通常與通道聯用,這里不做介紹。

if語法格式如下:

if ... else :

else if:

示例代碼:

語法格式:

另外,添加 fallthrough 會強制執行后面的 case 語句,不管下一條case語句是否為true。

示例代碼:

執行結果:

下面介紹幾種循環語句:

執行結果:

執行結果:

也可以通過標記退出循環:

--THE END--

go語言聊天室實現(六)創建HTTP連接,并升級為長連接

我們在mian函數中,首先初始化配置文件,然后新建http連接。

這個連接創建之后,監聽服務器的9999端口。如果url的路徑后綴為 "/ws",就轉發到ws/ws.go中的IndexHandler方法中。

這個方法中首先我們創建一個websocket的Upgrader實例,然后我們使用Upgrader的upgrade方法來升級一下我們的連接為長連接。

升級完成之后會返回一個*websocket.Conn的連接,我們之后所有的關于連接的操作,都是基于該conn的。

在該連接完成之后,我們將連接存放到一個名為Client的map中,以便之后管理更為方便。

之后,我們啟動一個goroutine來讀取連接中發送的信息內容,再根據內容進行相應的操作。

go語言操作符 ^ 和 &^

很多語言都是采用 ~ 作為按位取反運算符,Go 里面采用的是 ^ 。

如果作為二元運算符,^ 表示按位異或,即:對應位相同為 0,相異為 1。

操作符 ^,按位置零,例如:z = x ^ y,表示如果 y 中的 bit 位為 1,則 z 對應 bit 位為 0,否則 z 對應 bit 位等于 x 中相應的 bit 位的值。

對于有符號的整數來說,是按照補碼進行取反操作的(快速計算方法:對數 a 取反,結果為 -(a+1) ),對于無符號整數來說就是按位取反

計算過程

以3為例? 3在內存中補碼為 0*** 0011

取反? ? ? ? ? ? 1*** 1100

-1操作? ? ? ? ? 1*** 1011

除符號位取反? ? 1*** 0100 結果為-4

-------------------------------------------

以9為例 9在內存中補碼為 0*** 1001

取反? ? ? ? ? ? 1*** 0110

-1操作? ? ? ? ? 1*** 0101

除符號位取反? ? 1*** 1010 結果為-10

-------------------------------------------

以-5為例 -5在內存中為的補碼為 1*** 1011

為什么呢

-5源碼? ? ? ? ? 1*** 0101

除符號取反? ? ? 1*** 1010

+1操作? ? ? ? ? 1*** 1011

-------------------------------------------

那么-5取反怎么算

補碼 1***1011取反為 0***0100

因為符號位為0,所以是正數了,正數的補碼反碼源碼都是一個,所以是4

===================================

再看-1

-1源碼? ? ? ? ? 1*** 0001

除符號取反? ? ? 1*** 1110

+1操作? ? ? ? ? 1*** 1111

補碼 1*** 1111 取反為 0*** 0000

因為符號位為0,所以是正數了,正數的補碼反碼源碼都是一個,所以是0

go語言取反輸出的例子看這里

golang 獲取tcp連接的文件描述符fd

有個通過代理進來的tcp連接,通過Conn.RemoteAddr獲取到的是代理點的ip地址,為了獲取實際客戶端的ip,找到了syscall.Getpeername的方法,而這個方法需要的是連接的fd。

網頁標題:go語言連接符,go 字符串連接
分享URL:http://m.kartarina.com/article24/hddhce.html

成都網站建設公司_創新互聯,為您提供App開發手機網站建設品牌網站設計Google網站制作App設計

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

營銷型網站建設
主站蜘蛛池模板: 91久久精品无码一区二区毛片| 日产无码1区2区在线观看| 久久午夜夜伦鲁鲁片免费无码影视| 人妻老妇乱子伦精品无码专区| 无码办公室丝袜OL中文字幕| 国产精品无码专区在线播放| 亚洲精品无码久久久久| 无码免费午夜福利片在线| 亚洲一级Av无码毛片久久精品| 亚洲∧v久久久无码精品| 无码人妻H动漫中文字幕| 亚洲av无码国产综合专区| 国产无码一区二区在线| 无码国产69精品久久久久孕妇| 国产免费无码一区二区| 国产成人无码精品一区不卡| 人妻丰满熟妇AV无码区乱| 潮喷无码正在播放| 97无码免费人妻超级碰碰夜夜| 亚洲AV综合色区无码另类小说| 无码人妻精品一区二区三区不卡| 亚洲av无码一区二区三区乱子伦 | 亚洲精品9999久久久久无码| 亚洲啪啪AV无码片| 超清纯白嫩大学生无码网站| 无码中文av有码中文av| 亚洲精品无码中文久久字幕| 无码精品A∨在线观看十八禁| 中文有码无码人妻在线| 无码人妻一区二区三区一| 亚洲av成人中文无码专区| 亚洲最大av资源站无码av网址| 亚洲av永久无码| 国产午夜无码专区喷水| 无码人妻精品一区二区在线视频| 无码人妻精品一区二区三区66| 久久男人Av资源网站无码软件| 成在人线AV无码免费| 亚洲AV中文无码字幕色三 | 一区二区三区无码视频免费福利| 国产色爽免费无码视频|