Go中有uint64文字吗?

时间:2015-12-19 22:41:02

标签: go long-integer literals unsigned uint64

我正在看看Go中的numeric types。我想使用uint64文字。这可能在Go?

以下是我想如何使用uint64文字的示例:

for i := 2; i <= k; i += 1 { // I want i to be a uint64
    ...
}

2 个答案:

答案 0 :(得分:4)

您可以将整数文字转换为uint64

for i := uint64(1); i <= k; i++ {
    // do something
}

或者你可以在i循环之外初始化for,但是它的范围比循环本身大。

var i uint64
for i = 1; i <= k; i++ {
    // note the `=` instead of the `:=`
}
// i still exists and is now k+1

答案 1 :(得分:0)

您必须将变量显式声明为该类型。 int文字的类型为int https://play.golang.org/p/OgaZzmpLfB,类似var i uint64。在你的例子中,你也必须改变你的作业,所以像这样;

var i uint64
for i = 2; i <= k; i += 1 { // I want i to be a uint64
    ...
}