草庐IT

base_func

全部标签

go - channel 在 func main() 上发送和接收

我一直在学习channel,课本上的例子看起来简单易懂。但是,我无法理解以下行为。funcmain(){message:=make(chanstring)message为什么上面会导致错误?我知道我可以通过引入一个go例程让发送者和接收者都准备好来让它工作。但是,如果是这样的话,为什么下面的工作会起作用。funcmain(){message:=make(chanstring,1)message*********感谢JoeMcMahon的回答******************下面的文档供我引用*********我假设缓冲区1(与2不同)也会阻塞主例程,直到它找到相应的接收器。似乎1的缓

pointers - `go print(v)` 和 `go func() { print(v) }()` 之间的区别?

代码如下:typefieldstruct{namestring}funcprint(p*field){fmt.Println(p.name)}funcfix1(){data:=[]*field{{name:"one"},{name:"two"},{name:"three"}}for_,v:=rangedata{goprint(v)}time.Sleep(time.Millisecond*200)}funcwrong1(){data:=[]*field{{name:"one"},{name:"two"},{name:"three"}}for_,v:=rangedata{gofunc(){

pointers - `go print(v)` 和 `go func() { print(v) }()` 之间的区别?

代码如下:typefieldstruct{namestring}funcprint(p*field){fmt.Println(p.name)}funcfix1(){data:=[]*field{{name:"one"},{name:"two"},{name:"three"}}for_,v:=rangedata{goprint(v)}time.Sleep(time.Millisecond*200)}funcwrong1(){data:=[]*field{{name:"one"},{name:"two"},{name:"three"}}for_,v:=rangedata{gofunc(){

hash - 用户密码的 Golang Base64 编码 SHA256 摘要

我正在尝试完成TopCodeGoLearningChallenges作为学习围棋的工具。我目前正在研究他们的SimpleAPIWebServerproblem.该问题的一部分要求您加密密码字符串,例如“‘{SHA256}’+Base64编码的用户密码的SHA256摘要”我使用了以下代码来执行此操作,但结果与提供的测试用例不匹配。import("encoding/base64""crypto/sha256")funcencrtyptPasswords(passwordstring)string{h:=sha256.New()return"{SHA256}"+string(base64.S

hash - 用户密码的 Golang Base64 编码 SHA256 摘要

我正在尝试完成TopCodeGoLearningChallenges作为学习围棋的工具。我目前正在研究他们的SimpleAPIWebServerproblem.该问题的一部分要求您加密密码字符串,例如“‘{SHA256}’+Base64编码的用户密码的SHA256摘要”我使用了以下代码来执行此操作,但结果与提供的测试用例不匹配。import("encoding/base64""crypto/sha256")funcencrtyptPasswords(passwordstring)string{h:=sha256.New()return"{SHA256}"+string(base64.S

go - sqlx 库给出了奇怪的 base64 编码结果

我正在使用来自http://jmoiron.github.io/sqlx/的这个库做一个查询。按照文档,我找到了下面的代码。funccities(whttp.ResponseWriter,r*http.Request,_httprouter.Params)error{varmainstringvarsecondarystringvarlimitstringqueryParams:=make(map[string]interface{})ifk:=r.PostFormValue("keyword");k!=""{main="city.nameLIKE:keyword"queryParam

go - sqlx 库给出了奇怪的 base64 编码结果

我正在使用来自http://jmoiron.github.io/sqlx/的这个库做一个查询。按照文档,我找到了下面的代码。funccities(whttp.ResponseWriter,r*http.Request,_httprouter.Params)error{varmainstringvarsecondarystringvarlimitstringqueryParams:=make(map[string]interface{})ifk:=r.PostFormValue("keyword");k!=""{main="city.nameLIKE:keyword"queryParam

戈朗 : how is "func() interface {}" and "func() *MyStruct" incompatible types?

假设我有一段代码,其中一个函数接受另一个函数作为参数:typePersonstruct{Namestring}funcpersonBuilder()*Person{return&Person{Name:"John"}}funcprintRetrievedItem(callbackfunc()interface{}){fmt.Print(callback());}funcdoStuff(){printRetrievedItem(personBuilder);}这导致错误cannotusepersonBuilder(typefunc()*Person)astypefunc()interfa

戈朗 : how is "func() interface {}" and "func() *MyStruct" incompatible types?

假设我有一段代码,其中一个函数接受另一个函数作为参数:typePersonstruct{Namestring}funcpersonBuilder()*Person{return&Person{Name:"John"}}funcprintRetrievedItem(callbackfunc()interface{}){fmt.Print(callback());}funcdoStuff(){printRetrievedItem(personBuilder);}这导致错误cannotusepersonBuilder(typefunc()*Person)astypefunc()interfa

go - 如何将 float64(存储为 base-2)转换为 base-10 的系数和指数?

我正在寻找一种算法,它采用64位float并输出指数和系数,以便输入可以用float64input=coefficient*10^exponent的形式表示。据说这“不是微不足道的”,Golang的许多精确十进制格式(没有内置的十进制类型)的实现都有一些技巧,比如转换为字符串并解析它。虽然该解决方案在我见过的软件包中确实有效,但以数学/计算机科学的方式来实现它似乎是“合适的”。 最佳答案 它可能不是100%精确,但你可以使用Log10:packagemainimport("fmt""math")funcparts(vfloat64)