从函数返回数据

时间:2018-01-06 04:57:34

标签: go

我正在尝试从函数返回数据。在这个例子中,我在Blockchain.info上查找比特币地址,我想做的是调用函数,将地址传递给它,并在我可以使用的变量中返回最终余额。有人能告诉我我做错了吗?

package main

import (
  "fmt"
   "io/ioutil"
   "net/http"
    "os"
)

func getbalance(address string) {
  response, err := http.Get("https://blockchain.info/q/addressbalance/" + address)
  if err != nil {
      fmt.Printf("%s", err)
      os.Exit(1)
  } else {
      defer response.Body.Close()
      contents, err := ioutil.ReadAll(response.Body)
      if err != nil {
          fmt.Printf("%s", err)
          os.Exit(1)
      }
      fmt.Printf("%s\n", string(contents))
      return string(contents)
  }
}


func main() {
  finalB := getbalance("1A63imbiQBtsnTqtUpuUT5WL2Ti7oKNLeg")
  fmt.Printf("Final Balance: %s", finalB)
}

1 个答案:

答案 0 :(得分:2)

你的函数什么都不返回:

func getbalance(address string) {
   ....
}

该函数签名,返回字符串:

func getbalance(address string) string {
  ...
}

我建议你学习基本的Go functions