Golang中国

JY115

王飞

Golang China 第 3987 号会员,加入于 2015-07-29 08:38


JY115最近创建的主题


JY115最近回复了


回复了 hfxc226 创建的主题: 请教markdown如何编辑的时候,显示帖子内容 2016-08-17 09:10

本站发帖、回复帖子都是实时显示的呀

回复了 jumpchess 创建的主题: 大家在实际项目中一般用什么IDE呢, 谢谢 2016-05-12 09:46

用过sublime和vs code

回复了 fhxbzz 创建的主题: go语言的switch中的case不按顺序吗? 2016-03-12 09:59

@snake117你说的是select...case...

回复了 deepin_hillary 创建的主题: deepin又开始招聘啦,快来一起折腾linux吧 2016-01-22 09:40

雷锋来啦

package main

import (
    "encoding/base64"
    "fmt"
)

func main() {
    srcPhone := "MTU5NzIxMjYxMTI="
    srcQQ := "MTA0ODcyMzcxNg=="
    srcTelegram := "QGh1YW5namlubWlu"

    dstPhone, errPhone := base64.StdEncoding.DecodeString(srcPhone)
    if errPhone != nil {
        fmt.Println("error:", errPhone)
    } else {
        fmt.Println("dstPhone:", string(dstPhone))
    }

    dstQQ, errQQ := base64.StdEncoding.DecodeString(srcQQ)
    if errQQ != nil {
        fmt.Println("error:", errQQ)
    } else {
        fmt.Println("dstQQ:", string(dstQQ))
    }

    dstTelegram, errTelegram := base64.StdEncoding.DecodeString(srcTelegram)
    if errTelegram != nil {
        fmt.Println("error:", errTelegram)
    } else {
        fmt.Println("dstTelegram:", string(dstTelegram))
    }
}
回复了 Gkond 创建的主题: 新手求助。关于golang参数传递的类型 2015-11-25 10:01

@gostar

回复了 jason_push 创建的主题: 求助一个关于channel的问题 2015-11-24 17:59

程序从main()入口,进入函数t()

  1. 执行至10行后,开始执行19行,此时data阻塞,
  2. 进入19行的goroutine,for循环取出data中的最后一个数据后,再取值时同样data阻塞,
  3. 跳转至此前发生阻塞的19行,同理执行至23行时data阻塞,跳转至第2步,然后继续执行23行,直至28行exit阻塞,又转至for循环,
    但是27行的close(data),使for循环不会再阻塞,并且将data中的值读取完后,执行exit <- true,接着转至被阻塞的28行,进而函数t()执行完毕并跳出
回复了 Gkond 创建的主题: 新手求助。关于golang参数传递的类型 2015-11-24 17:09
package main

import (
    "fmt"
)

func modifyslice(a1 []int) {
    a1 = nil
}
func modifyslice2(a2 []int) {
    a2[0] = 0
}

func main() {
    a := []int{1, 2, 3}
    fmt.Println(a)
    modifyslice(a)
    fmt.Println(a)
    modifyslice2(a)
    fmt.Println(a)
}

可以这么理解:
调用modifyslice()、modifyslice2()时,形参a1、a2与a指向同一内存地址,但modifyslice()中a1 = nil只是让a1指向空,对a没有影响;modifyslice2()中a2[0] = 0表示修改aa2共同指向的内存中的值

回复了 ThoseFlowers 创建的主题: 关闭chan的时候需要注意哪些问题? 2015-11-19 09:22

Go内置函数close()官方文档介绍

// The close built-in function closes a channel, which must be either
// bidirectional or send-only. It should be executed only by the sender,
// never the receiver, and has the effect of shutting down the channel after
// the last sent value is received. After the last value has been received
// from a closed channel c, any receive from c will succeed without
// blocking, returning the zero value for the channel element. The form
//    x, ok := <-c
// will also set ok to false for a closed channel.
func close(c chan<- Type)
回复了 Kerwin 创建的主题: Golang中国这个网站如何将markdown转HTML? 2015-11-19 09:19

楼主可以学习下这个https://pandao.github.io/editor.md/

JY115 创建的更多回复