Golang将字符串转换为int64

我想将字符串转换为int64。 从 strconv </ code>包中找到的是 Atoi </ code>函数。 似乎将字符串转换为int并返回它:</ p>

  // Atoi是ParseInt(s,10,0)的简写。
func Atoi(s string)( i int,err错误){
i64,err:= ParseInt(s,10,0)
返回int(i64),err
}
</ code> </ pre>

ParseInt实际上返回一个int64:</ p>

  func ParseInt(s字符串,基本int,bitSize int)(i int64,错误错误){
// ... \ n}
</ code> </ pre>

因此,如果我想从字符串中获取int64,应该避免使用Atoi,而是使用ParseInt吗? 还是在某处隐藏了Atio64?</ p>
</ div>

展开原文

原文

I want to convert a string to an int64. What I find from the strconv package is the Atoi function. It seems to cast a string to an int and return it:

// Atoi is shorthand for ParseInt(s, 10, 0).
func Atoi(s string) (i int, err error) {
        i64, err := ParseInt(s, 10, 0)
    return int(i64), err
}

The ParseInt actually returns an int64:

func ParseInt(s string, base int, bitSize int) (i int64, err error){
     //...
}

So if I want to get an int64 from a string, should I avoid using Atoi, instead use ParseInt? Or is there an Atio64 hidden somewhere?

2个回答



否,没有Atoi64。 您还应该将64作为最后一个参数传递给ParseInt,否则在32位系统上可能不会产生期望的值。</ p>
</ div>

展开原文

原文

No, there's no Atoi64. You should also pass in the 64 as the last parameter to ParseInt, or it might not produce the expected value on a 32-bit system.

dsyua2828
dsyua2828 虽然答案是正确的,但您可以添加示例以使其非常友好
一年多之前 回复



将字符串解析为int64示例:</ p>

  //对签名使用最大值 64个整数。  http://golang.org/pkg/builtin/#int64
var s string =“ 9223372036854775807”
i,err:= strconv.ParseInt(s,10,64)
if err!= nil {
panic(err )
}
fmt.Printf(“ Hello,类型为%s的%v!
”,i,reflect.TypeOf(i))
</ code> </ pre>

输出 :</ p>


你好,类型为int64的9223372036854775807!</ p>
</ blockquote>

https://play.golang.org/p/XOKkE6WWer </ p>
</ div>

展开原文

原文

Parsing string into int64 example:

// Use the max value for signed 64 integer. http://golang.org/pkg/builtin/#int64
var s string = "9223372036854775807"
i, err := strconv.ParseInt(s, 10, 64)
if err != nil {
    panic(err)
}
fmt.Printf("Hello, %v with type %s!
", i, reflect.TypeOf(i))

output:

Hello, 9223372036854775807 with type int64!

https://play.golang.org/p/XOKkE6WWer

douti6740
douti6740 我认为这应该被标记为正确答案。
接近 2 年之前 回复
donglv1831
donglv1831 完美的例子...谢谢!
接近 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐