GO语言"encoding/binary"包中"Varint"函数的用法及代码示例。
用法:
func Varint(buf []byte)(int64, int)
Varint 从 buf 解码 int64 并返回该值和读取的字节数 (> 0)。如果发生错误,则值为 0,字节数 n <= 0,含义如下:
n == 0: buf too small n < 0: value larger than 64 bits (overflow) and -n is the number of bytes read
例子:
package main
import (
"encoding/binary"
"fmt"
)
func main() {
inputs := [][]byte{
{0x81, 0x01},
{0x7f},
{0x03},
{0x01},
{0x00},
{0x02},
{0x04},
{0x7e},
{0x80, 0x01},
}
for _, b := range inputs {
x, n := binary.Varint(b)
if n != len(b) {
fmt.Println("Varint did not consume all of in")
}
fmt.Println(x)
}
}
输出:
-65 -64 -2 -1 0 1 2 63 64
相关用法
- GO Value用法及代码示例
- GO Values.Get用法及代码示例
- GO ValidString用法及代码示例
- GO Values用法及代码示例
- GO Values.Set用法及代码示例
- GO Valid用法及代码示例
- GO ValidRune用法及代码示例
- GO Values.Has用法及代码示例
- GO Val用法及代码示例
- GO Values.Del用法及代码示例
- GO Values.Add用法及代码示例
- GO Value.FieldByIndex用法及代码示例
- GO Values.Encode用法及代码示例
- GO PutUvarint用法及代码示例
- GO Scanner.Scan用法及代码示例
- GO LeadingZeros32用法及代码示例
- GO NewFromFiles用法及代码示例
- GO Regexp.FindString用法及代码示例
- GO Time.Sub用法及代码示例
- GO Regexp.FindAllIndex用法及代码示例
注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 Varint。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。