Go   发布时间:2022-04-09  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了[日常] Go语言圣经--复合数据类型,数组习题大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

go

1.

2.

3.

4.slice

go

1.

2.

3.一个组成部分

4.Printf函数显示一个值对应的数据类型

5.函数传参可以显式地传入一个数组指针,那样的话函数通过指针对数组的任何修改都可以直接反馈到调用

4.1一个函数,计算两个函数

4.2一个程序,认情况下打印标准输入的支持通过命令行输出

1.

func Sum256(data []bytE) [Size]byte

2. godoc crypto

Highlighter">

//命令行标志
var hashMethod=flag.String("s","sha256","请输入哈希算法")
func main(){
flag.Parse()
num := compareSha256("x","X")
fmt.Println(num)

    //接收命令行flag,进行判断
    printHash(Strings.ToUpper(*hashMethod),"x")

}
/
练习 4.1: 编写一个函数,计算两个SHA256哈希码中不同bit的数目。(参2.6.2节的PopCount函数。)
/
func compareSha256(str1 String,str2 String)int{
a := sha256.Sum256([]byte(str1))
b := sha256.Sum256([]byte(str2))
num := 0
//循环字节数组
for i:=0;i<len(a);i++{
//1个字节8个bit,移位运算,获取每个bit
for m:=1;m<=8;m++{
//比较每个bit是否相同
if (a[i] >> uint(m))!=(b[i] >>uint(m)){
num++
}
}
}
return num
}
/
练习 4.2: 编写一个程序,认情况下打印标准输入的SHA256编码,并支持通过命令行flag定制,输出SHA384或SHA512哈希算法。
/
func printHash(flag String,str String){
if flag=="SHA256"{
fmt.Printf("%x\n",sha256.Sum256([]byte(str)))
return
}
if flag=="SHA512"{
fmt.Printf("%x\n",sha512.Sum512([]byte(str)))
return
}
if flag=="SHA384"{
fmt.Printf("%x\n",sha512.Sum384([]byte(str)))
return
}

}

@H_419_197@

[日常] Go语言圣经--复合数据类型,数组习题

大佬总结

以上是大佬教程为你收集整理的[日常] Go语言圣经--复合数据类型,数组习题全部内容,希望文章能够帮你解决[日常] Go语言圣经--复合数据类型,数组习题所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: