天天看點

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

文章目錄

  • 1.包管理 (調用)
    • 調用包(在同一個級别)
    • 不同級别
  • 2 . 輸出print
    • 内置函數
    • fmt 包 (推薦)
  • 3. 輸入 fmt.Scan
    • 讀取整整一行
  • 3. 注釋
  • 4. Go語言命名規則
  • 5. ASCII碼
  • 6. 基本元素
    • **字面量**
    • 操作符勻運算符
    • 聲明

1.包管理 (調用)

介紹

  1. 一個檔案夾可以成為一個包
  2. 在檔案夾(包)中可以建立多個檔案夾
  3. 在 同一個包下的每一個檔案中必須指定

    包名稱且相同

  4. 同一個包中,包名相同,可直接

    調用其他檔案中的功能

分類

  1. main包,必須寫一個

    main函數

    ,此函數就是項目的入口(main主函數)。編譯生成的就是一個

    可執行檔案

  2. 非main包,用來将代碼

    分類

    ,友善查找

    注意:

    功能必須首字母大寫

    如果是

    小寫

    開頭,則不能被其他所調用

調用包(在同一個級别)

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

然後運作,發現隻build檔案app1沒有編譯app2

  1. 手動執行go install
  2. 修改配置:讓其直接可編譯一個檔案夾裡面的内容
    (二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素
    (二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素
    結果
    (二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

不同級别

導入包----->也就是檔案所在位置

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

調用功能

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

2 . 輸出print

内置函數

不确定高版本會支援

  1. print 不換行
  2. println

fmt 包 (推薦)

  1. fmt.Printf 不換行,可以轉義特殊字元

    需要格式化輸出并帶輸出格式

    ,可以列印出

    字元串,和變量

    Printf : 隻可以列印出格式化的字元串,可以輸出字元串類型的變量,不可以輸出整形變量和整形
var a int=1
fmt.Printf("%d,%s",a,"abc")
           
  1. fmt.Println

    println

    會根據你輸入格式

    原樣輸出

fmt.Println("hello","world","nice")
結果:中間有空格
hello  woeld nice
           

也就是說,當需要格式化輸出資訊時一般選擇 Printf,其他時候用 Println 就可以了

3. 輸入 fmt.Scan

fmt.Scan
fmt.Scanln
fmt.Scanf
           
  1. 用指針,也就是會用到記憶體位址
  2. &

    為指針,指向的位址
  3. 類型要比對,所有類型都可以
  4. switch可以用于判斷

    interface

    變量實際存儲的變量類型。
var name string
fmt.Scan(&name)
           
(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

特别說明:fmt.Scan

要求輸入兩個值,必須輸入兩個

,否則他會一直等待。

var name string
    var age int
    fmt.Println("請輸入使用者名:")
    // 當使用Scan時,會提示使用者輸入
    // 使用者輸入完成之後,會得到兩個值:count,使用者輸入了幾個值;err,用輸入錯誤則是錯誤資訊
    _, err := fmt.Scan(&name, &age)
    if err == nil {
        fmt.Println(name, age)
    } else {
        fmt.Println("使用者輸入資料錯誤", err)
    }
   
           

特别說明:fmt.Scanln

等待回車

var name string
    var age int
    fmt.Print("請輸入使用者名:")
    // 當使用Scanln時,會提示使用者輸入
    // 使用者輸入完成之後,會得到兩個值:count,使用者輸入了幾個值;err,用輸入錯誤則是錯誤資訊
    count, err := fmt.Scanln(&name, &age)
    fmt.Println(count, err)
    fmt.Println(name, age)
           

fmt.Scanf

支援特殊字元

var name string
    var age int
    fmt.Print("請輸入使用者名:")
    _, _ = fmt.Scanf("我叫%s 今年%d 歲", &name, &age)
    fmt.Println(name, age)
           

讀取整整一行

當使用ftm.Scan等功能時,如果輸入一整行且期間存在空格,則無法擷取整行。

想要讀取一行資料,這個功能

可以基于标準輸入

來進行實作。

package main
import (
    "bufio"
    "fmt"
    "os"
)
func main() {
    reader := bufio.NewReader(os.Stdin)
    // line,從stdin中讀取一行的資料(位元組集合 -> 轉化成為字元串)
    // reader預設一次能4096個位元組(4096/3)
    // 1. 一次性讀完,isPrefix=false
    // 2. 先讀一部分,isPrefix=true,再去讀取isPrefix=false
    line, _, _ := reader.ReadLine()
    data := string(line)
    fmt.Println(data)
}
           

3. 注釋

/*
	可以注釋多行
*/
           

4. Go語言命名規則

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

5. ASCII碼

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素
(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

6. 基本元素

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

25個關鍵字

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

字面量

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

操作符勻運算符

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素

聲明

(二)Go----基礎知識(包管理,輸出,輸入,注釋,命名,ASCII碼,基本元素)1.包管理 (調用)2 . 輸出print3. 輸入 fmt.Scan3. 注釋4. Go語言命名規則5. ASCII碼6. 基本元素