golang和c語言相似。 Go語言被描述為“C 類似語言”,或“21 世紀的C語言”,其語法與C相近;Go從C語言繼承了相似的表達式語法、控制流結構、基礎資料型別、呼叫參數傳值、指標等很多思想,還有C語言一直所看中的編譯後機器碼的運作效率以及和現有作業系統的無縫適配。
本教學操作環境:windows7系統、GO 1.18版本、Dell G3電腦。
golang和c語言相似
Go(又稱 Golang)是 Google 的Robert Griesemer,Rob Pike 及Ken Thompson 開發的一種靜態強型別、編譯型語言。
Go語言被描述為“C 類似語言”,或“21 世紀的C語言”。 Go 從C語言繼承了相似的表達式語法、控制流結構、基礎資料型別、呼叫參數傳值、指標等很多思想,還有C語言一直所看中的編譯後機器碼的運作效率以及和現有作業系統的無縫適配。
Go 語言文法與 C 相近,功能上有:記憶體安全,GC(垃圾回收),結構型態及 CSP-style 並發計算。
Go支援垃圾回收功能。 Go的平行模型是以東尼·霍爾的通訊順序進程(CSP)為基礎,採取類似模型的其他語言包括Occam和Limbo,但它也具有Pi運算的特徵,例如通道傳輸。在1.8版本中開放插件(Plugin)的支持,這意味著現在能從Go中動態載入部分函數。
Go語言是雲端運算時代的C語言。 Go語言的誕生是為了讓程式設計師有更高的生產效率,Go語言專門針對多處理器系統應用程式的程式設計進行了最佳化,使用Go編譯的程式可以媲美C或C 程式碼的速度,而且更加安全、支援並行進程。
開發人員在為專案選擇語言時,必須在快速開發和效能之間做出選擇。 C和C 這類語言提供了快速的執行速度,而 Ruby 和 Python 這類語言則擅長快速開發。 Go語言在這兩者間架起了橋樑,不僅提供了高效能的語言,同時也讓開發更快速。
golang與c語言的比較
1、程式碼管理對比
C語言中透過檔案來管理程式碼
想使用某一個函數時,只需要include導入對應的.h檔即可
Go語言中透過套件來管理程式碼
Go語言沒有.h檔案的概念, 在Go中想使用某一個函數時, 只需要import匯入對應的套件即可
C語言中函數、變數公私有管理
#透過extern和static實作是否公開函數和變數
Go語言中函數、變數公私有管理
透過函數名稱首字母大小寫實作是否公開函數
透過變數名稱首字母大小寫實作是否公開變數
2、關鍵字比較
C語言中一共有32個關鍵字
1 | 2 | 3 | 4 | 5 | #6 | 7 | 8 |
---|---|---|---|---|---|---|---|
if | else | switch | case | ||||
##default | #break | return | |||||
goto | #do | while | for |
Go語言中總共有25個關鍵字
1 | #3 | 4 | 5 | 6 | 7 | 8 | |
---|---|---|---|---|---|---|---|
#if | else | switch | ##case | default | break#break | return | #goto |
#goto | #fallthrough | for | #continue | ##type | struct | ||
var | #const | map | func | interface | |||
import | package | defer
go |
select |
chan |
C語言資料型別 | Go語言資料型別 | |
---|---|---|
#C語言各資料型別佔用記憶體空間 | #型別 | |
#64位元編譯器 | ||
1 | 1 | |
4 | 4 | |
4 | 4 | |
8 | 8 | |
2 | ##2 | |
4 | 8 |
void* | 4 | 8 | |
---|---|---|---|
類型 | 32位元編譯器 | 64位元編譯器 | |
int8/uint8 | 1 | ||
signed char/unsigned char | #int16/uint16 | 2 | |
signed short/unsigned short | ##int32/uint32 | # 4 | 4 |
#int64/uint64 | 8 | ##8 | |
#byte | 1 | 1 | |
rune | 4 | 4 | |
##int | 4 | 8 | |
#uintptr | ##48 | 根據機器位數決定長度uint32/uint64 | |
#float32 | 4 | ##4 | #float |
float64 | 8 | 8 | ##1 |
char類型的整數 | #false | ##1 |
4、常數變數比較
C語言定義常數與變數格式
数据类型 变量名称 = 值; const 数据类型 常量名称 = 值;
Go語言定義常數和變數格式除了以下標準格式外,Go語言還提供了好幾種簡單的語法糖var 变量名称 数据类型 = 值;
const 变量名称 数据类型 = 值;
【相關推薦:
以上是golang和什麼相似的詳細內容。更多資訊請關注PHP中文網其他相關文章!