相关疑难解决方法(0)

如何将uint8转换为字符串

http://play.golang.org/p/BoZkHC8_uA

我想将uint8转换为字符串,但无法弄清楚如何.

  package main

  import "fmt"
  import "strconv"

  func main() {

    str := "Hello"
    fmt.Println(str[1])  // 101

    fmt.Println(strconv.Itoa(str[1]))
  }
Run Code Online (Sandbox Code Playgroud)

这给了我 prog.go:11: cannot use str[1] (type uint8) as type int in function argument [process exited with non-zero status]

任何的想法?

go

11
推荐指数
3
解决办法
3万
查看次数

如何在golang中将字符串转换为整数

我想在golang中将字符串转换为整数.但我不知道字符串的格式.例如,"10"- > 10,"65.0"- > 65,"xx"- > 0,"11xx" - > 11,"xx11" - > 0

我做了一些搜索并找到了strconv.ParseInt().但它无法处理"65.0".所以我必须检查字符串的格式.

有没有更好的办法?

casting type-conversion go

9
推荐指数
3
解决办法
2万
查看次数

Go中的惯用语类型转换

我正在玩Go,并想知道在Go中执行惯用类型转换的最佳方法是什么.基本上我的问题之间的自动类型转换中规定uint8,uint64float64.根据我对其他语言的经验,a uint8与a 的乘法uint64将产生一个uint64值,但在go中则不然.

这是我构建的一个示例,我问这是否是编写此代码的惯用方法,或者我是否缺少重要的语言结构.

package main

import ("math";"fmt")

const(Width=64)

func main() {

    var index uint32
    var bits uint8

    index = 100
    bits = 3

    var c uint64
    // This is the line of interest vvvv
    c = uint64(math.Ceil(float64(index * uint32(bits))/float64(Width)))
    fmt.Println("Test: %v\n", c)
}
Run Code Online (Sandbox Code Playgroud)

从我的观点来看,由于所有显式类型转换,上限值的计算似乎不必要复杂.

谢谢!

go

7
推荐指数
1
解决办法
2183
查看次数

标签 统计

go ×3

casting ×1

type-conversion ×1