說明:編程
文章內容可能須要C語言的基礎知識,若是不懂C語言請自行學習,
編程不懂C語言跟鹹魚有什 麼區別
,推薦一個不錯的C語言課程Link:
http://www.it666.com/my/course/2 若是你以爲這是一條廣告,請自行忽略,
talk is cheap show me the code!
1.保存源代碼的文件形式
- C語言的源代碼保存在.c文件中
- Go語言的源代碼保存在.go文件中
2.代碼的管理方式不一樣
- C語言經過文件來管理代碼, 會將不一樣的功能(模塊)的代碼, 放到不一樣的文件中, 而後聲明.h, 而後include導入.h文件使用對應的代碼
- Go語言經過包來管理代碼, 會將不一樣功能(模塊)的代碼, 放到不一樣的包中, 而後經過import導入包來使用對應的代碼
3.什麼是包
- 通俗點來說,就是裝各類工具的工具箱.
- go語言中,一個文件夾就是一個包,只須要將不一樣類型的.go文件放到不一樣的文件夾裏,而後經過pakage聲明包名,在main.go中經過import導入就能夠調用包中的函數
注意點:
- go語言規定,包名必須與.go對應的文件夾保持一致
- 包名不能重複定義,不然編譯不能經過
Go語言標準的項目格式
項目文件夾(GOPATH對應的文件夾)函數
-------|---------src文件夾(用於存儲.go文件的文件夾)工具
----------------------|---------main文件夾(存放package main對應文件的文件夾)學習
----------------------|---------other文件夾(存放package 其它對應文件的文件夾)code
-------|---------bin文件夾(用於存放可執行程序的文件夾)get
-------|---------pkg文件夾(用於存放二進制文件的文件夾)it
函數的調用格式不一樣編譯
- C語言只要include以後, 就能夠直接經過函數名稱調用了
- Go語言經過import以後, 還需經過報名.函數名稱的方式來調用
語句的結束方式不一樣
- C語言每條語句後面都必須添加分號
- Go語言每條語句後面不用添加分號, 可是若是兩條語句在同一行, 就必須添加分號
對代碼的嚴格程度不一樣
- C語言中include了一個.h文件, 哪怕沒有使用也不會報錯
- Go語言中import了一個包, 若是沒有使用, 就會報錯
- C語言中定義變量沒有使用不會報錯
- Go語言中定義變量沒有使用就會報錯
- C語言中函數的{能夠和函數名稱在同一行, 也能夠再也不同一行
- Go語言中函數的{必須和函數名稱在同一行, 不然會報錯