>变量声明的语法
>在将j添加到c之前将j转换为byte,因为Go在执行算术时缺少(按设计)整数提升转换.
>删除分号.
干得好
var a,c byte var data []byte var j int c = data[j] c = c + byte(j) c ^= a c ^= 0xFF c += 0x48
如果你打算按位而不是在Go中,请注意那个操作符是^,而不是大多数其他当代编程语言中使用的〜.这与用于xor的运算符相同,但两者不是模糊的,因为编译器可以通过确定^是用作一元运算符还是二元运算符来判断哪个是哪个.