<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] 函數的返回值是指函數被調用之后,執行函數體中的代碼所得到的結果。這個結果通過 `return` 語句返回。 `return` 語句將被調用函數中的一個確定的值帶回到主調函數中,供主調函數使用。函數的返回值類型是在定義函數時指定的。 `return` 語句中表達式的類型應與定義函數時指定的返回值類型一致。 ## 返回值基本使用(單個返回值) ```go func 函數名(形參 形參類型) (返回值類型) { 函數體 return 返回值 } 變量 := 函數名(實參) ``` 同樣設計一個加法計算函數 ```go /* 多個數累計和 傳任何個整型數字,將所有數字累加并返回累加的和 */ func allNumAddReturn(nums ...int) (int) { sum = 0 for _, num := range nums { sum += num } return sum } func main() { total := allNumAddReturn(1, 2, 3, 5) fmt.Printf("total: %v\n", total) } ``` ## 無返回值 聲明函數時沒有定義返回值,函數調用的結果不能作為值使用 ```go /* 打印三角形星星 傳遞行數,打印出對應行數的三角形星星。 */ func printTriangle(line int) { for i := 1; i <= line; i++ { // 打印空格 for j := 0; j < line-i; j++ { fmt.Printf("%s", " ") } // 打印星星 * for k := 0; k < 2*i-1; k++ { fmt.Printf("%s", "*") } fmt.Println() } } func main() { printTriangle(3) } ``` ## 返回多個值 ```go /* 登錄函數 判斷用戶名密碼是否正確,返回用戶名(string)和賬號密碼是否匹配(bool)。 */ func login(user, passwd string) (string, bool) { if user == "jiaxzeng" && passwd == "abc" { return user, true } else { return user, false } } func main() { user, isok := login("jiaxzeng", "abc") if isok { fmt.Println(user, "登錄成功") } } ``` ## 返回值命名 return 語句后面沒有變量,即返回返回值命名的變量。如果函數體沒有該值,返回該類型的默認值和空值。 ```go /* 兩數相加 兩個數相加 并 返回兩數和 */ func twoNumAdd(num1, num2 int) (sum int) { sum = num1 + num2 return } func main() { sum := twoNumAdd(1, 2) fmt.Printf("sum: %v\n", sum) } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看