Go 有指针,但是没有指针运算。结构体字段可以通过结构体指针来访问。通过指针间接的访问是透明的。package mainimport "fmt"type Vertex struct { X int Y int}func main() { p := Vertex{1, 2} q := &p q.X = 1e9……继续阅读 » 4年前 (2021-03-14) 2881浏览 1315个赞
一个结构体(struct)就是一个字段的集合。(而 type 定义跟其字面意思相符。)package mainimport "fmt"type Vertex struct { X int Y int}func main() { fmt.Println(Vertex{1, 2})} ……继续阅读 » 4年前 (2021-03-14) 2115浏览 1570个赞
if 语句看起来跟 C 或者 Java 中的一样,除了没有了 ( ) 之外(甚至强制不能使用它们),而 { } 是必须的。package mainimport ( "fmt" "math")func sqrt(x float64) string { if x < 0 { return sqr……继续阅读 » 4年前 (2021-03-14) 1364浏览 2140个赞
常量的定义与变量类似,只不过使用 const 关键字。常量可以是字符、字符串、布尔或数字类型的值。package mainimport "fmt"const Pi = 3.14func main() { const World = "世界" fmt.Println("Hello", ……继续阅读 » 4年前 (2021-03-14) 2368浏览 2229个赞
Go 只有一种循环结构,for 循环。所以for循环在golang里显得格外重要,基本的 for 循环看起来跟 C 或者 Java 中做的一样,除了没有了 ( ) 之外(甚至强制不能使用它们),而 { } 是必须的。package mainimport "fmt"func main() { sum := 0 for i :=……继续阅读 » 4年前 (2021-03-14) 2045浏览 1277个赞
var 语句定义了一个变量的列表;跟函数的参数列表一样,类型在后面。package mainimport "fmt"var x, y, z intvar c, python, java boolfunc main() { fmt.Println(x, y, z, c, python, java)}变量定义可以包含初始……继续阅读 » 4年前 (2021-03-14) 2382浏览 2482个赞
函数可以返回任意数量的返回值。这个函数返回了两个字符串。package mainimport "fmt"func swap(x, y string) (string, string) { return y, x}func main() { a, b := swap("hello", "wor……继续阅读 » 4年前 (2021-03-14) 1303浏览 2496个赞
函数可以没有参数或接受多个参数。在这个例子中,add 接受两个 int 类型的参数。注意类型在变量名之后。package mainimport "fmt"func add(x int, y int) int { return x + y}func main() { fmt.Println(add(42, 13))}……继续阅读 » 4年前 (2021-03-14) 2514浏览 2849个赞
每个 Go 程序都是由包组成的。程序运行的入口是包 main。这个程序使用并导入了包 “fmt” 和 “math”。按照惯例,包名与导入路径的最后一个目录一致。package mainimport ( "fmt" "math")func main() {……继续阅读 » 4年前 (2021-03-14) 1857浏览 2606个赞
go语言版的ip2long 函数,该函数不会对 IP 的合法性进行校验// 注意: 该函数不会对 IP 的合法性进行校验func Ip2Long(ip string) (ips string) { var ip_pieces = strings.Split(ip, ".") ip_1, _ := strconv.Pars……继续阅读 » 4年前 (2021-03-14) 2546浏览 747个赞
go语言base64使用代码 golang base64 的一个小例子package main import ( "fmt" "encoding/base64")……继续阅读 » 4年前 (2021-03-14) 2955浏览 1968个赞
go语言 strconv.ParseInt 的例子 golang strconv.ParseInt 是将字符串转换为数字的函数,功能灰常之强大,看的我口水直流.func ParseInt(s string,……继续阅读 » 4年前 (2021-03-14) 2088浏览 867个赞
golang strconv atoi itoa 在做任何项目的时候都要用到字符串和数字,相互转换是最近基本的操作,哈哈 这里就介绍golang怎么做这些事情 参考代码如下:package main import ( "strconv")……继续阅读 » 4年前 (2021-03-14) 2577浏览 856个赞
go语言按显示长度截取字符串 根据显示长度截取字符串,之前php用的utf8编码,10个英文和10个汉字的显示长度差距太大,按字节截取的话又会出错出现截取半个汉字的情况,所以写了这两个函数.这两天在折腾golang,所以就用golang重写了着连个函数.代码如下:package ……继续阅读 » 4年前 (2021-03-14) 2039浏览 1206个赞
golang的template包很好用,做一些复杂的文本格式生成太有帮助了,生成网页也是很不错的,使用起来非常方便package main import ( "fmt" "os" "text/template") type Latlng struct ……继续阅读 » 4年前 (2021-03-14) 1415浏览 2620个赞
超简易Go语言实现的留言板代码package main import ( // "fmt" "io" "log" "net/http" "text/template" "time&quo……继续阅读 » 4年前 (2021-03-14) 2465浏览 2906个赞
json已成为不同平台间传送数据的最佳方式,Golang对json的支持非常好package main import ( "fmt" "encoding/json") func main() { // json encode j1 := make(map[stri……继续阅读 » 4年前 (2021-03-14) 1484浏览 652个赞
一段Go语言实现的socket 测试代码 用golang不用他的net包还有什么意义,又一个测试代码.server.go 服务端package main import ( "fmt" "log"……继续阅读 » 4年前 (2021-03-14) 2271浏览 1956个赞
Go语言图片处理和生成缩略图代码package main import ( "fmt" "os" "image" "image/color" "image/draw" "image/jpeg……继续阅读 » 4年前 (2021-03-14) 2320浏览 2707个赞
Go语言的队列和堆栈实例代码来源:http://www.diandian.com golang,其实我的实现是利用container/list包实现的,其实container/list包很强大.package main import ( &qu……继续阅读 » 4年前 (2021-03-14) 1599浏览 2442个赞
用Go语言实现一个简单的聊天室程序来源:http://www.dotcoo.com/golang-websocket-chatroom websocket包 : code.google.com/p/go.net/websocket文档&n……继续阅读 » 4年前 (2021-03-14) 1964浏览 1744个赞
Go语言版的ip2long long2ip ip2longfunc Ip2long(ipstr string) (ip uint32) { r := `^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})` reg, err := ……继续阅读 » 4年前 (2021-03-14) 2225浏览 1159个赞
go语言编写的一个守护进程来源:http://www.dotcoo.com/golang-angel 用node写了一个socket后台服务,可是有时候会挂,node一个异常就game over了,所以写了一个守候.package main import……继续阅读 » 4年前 (2021-03-14) 1458浏览 397个赞
按字节截取字符串 utf-8不乱码// 按字节截取字符串 utf-8不乱码func SubstrByByte(str string, length int) string { bs := []byte(str)[:length] bl := 0 for i:=len(bs)-1; i>=0; i-- { ……继续阅读 » 4年前 (2021-03-14) 1484浏览 1836个赞
golang截取字符串,按字符截取func Substr(str string, start, length int) string { rs := []rune(str) rl := len(rs) end := 0 if start < 0 { start = rl - 1 +……继续阅读 » 4年前 (2021-03-14) 2981浏览 2070个赞
Go语言中的匿名结构体使用范例package main import ( "fmt") func main() { var user struct{Name string; Gender int} user.Name = "dotcoo" user.Gen……继续阅读 » 4年前 (2021-03-14) 1331浏览 175个赞
Go语言的排它锁sync.Mutexpackage main import ( "fmt" "sync" "time") var m *sync.Mutex func main() { m = new(sync.Mutex) go lo……继续阅读 » 4年前 (2021-03-14) 1859浏览 242个赞
这段代码是试图打开指定的文件,然后判断是否有错误package main import ( "fmt" "os") func main() { f, err := os.Open("dotcoo.com.txt") if err != nil ……继续阅读 » 4年前 (2021-03-14) 3097浏览 2671个赞
golang生成随机数可以使用math/rand包package mainimport ( “fmt” “math/rand”)func main() { for i:=0; i……继续阅读 » 4年前 (2021-03-14) 1264浏览 1280个赞
Go语言计算两个经度和纬度之间的距离package main import ( "fmt" "math") func main() { lat1 := 29.490295 lng1 := 106.486654 lat2 := 29……继续阅读 » 4年前 (2021-03-14) 1336浏览 1010个赞
Go语言中使用MySql,此代码需要先安装mysql的go语言驱动 首先安装mysql的go语言驱动go get github.com/ziutek/mymysql/godrv 演示代码package u……继续阅读 » 4年前 (2021-03-14) 2345浏览 2360个赞
package mainimport ( “fmt” “fastcgi” “os”)type Application struct {}func (a *Application) Handle(r *fastcgi.Request) bool {……继续阅读 » 4年前 (2021-03-14) 2710浏览 295个赞
一个简单的Go语言定时器使用范例代码package mainimport ( "fmt" "time")func testTimer1() { go func() { fmt.Println("test timer1") }()}func testTimer2() { ……继续阅读 » 4年前 (2021-03-14) 2552浏览 603个赞
Go语言通过smtp发送邮件的范例代码package mainimport ( "net/smtp" "fmt" "strings")/* * user : example@example.com login smtp server user * password: xxxxx……继续阅读 » 4年前 (2021-03-14) 1222浏览 1428个赞
Go语言实现的简单网络端口扫描代码package mainimport ( "net" "fmt" "os" "runtime" "time" "strconv")func loop(startport, endpo……继续阅读 » 4年前 (2021-03-14) 2605浏览 1766个赞
Go语言版的AzDG可逆加密演算法package mainimport ( "fmt" "crypto/md5" "encoding/base64" "time")var cipher = "密鑰"var h = md5.New()fu……继续阅读 » 4年前 (2021-03-14) 2981浏览 962个赞
转出byte变量的二进制字符串,一眼看清byte内是什么样子func ByteToBinaryString(data byte) (str string) { var a byte for i:=0; i < 8; i++ { a = data data <<= 1 data >>= 1 swit……继续阅读 » 4年前 (2021-03-14) 2693浏览 978个赞
Go语言实现选择法排序package mainimport "fmt"func select_sort(a []int) { len := len(a) for i:=0; i < len-1; i++ { k := i j:= i + 1 for ; j < len; j++ { if a……继续阅读 » 4年前 (2021-03-14) 1154浏览 1888个赞
Go语言中使用反射的范例代码片段 // Data Modeltype Dish struct { Id int Name string Origin string Query func()} ……继续阅读 » 4年前 (2021-03-14) 1844浏览 221个赞
Go语言实现的树形结构数据比较算法的代码片段// Two binary trees may be of different shapes, // but have the same contents. For example://// 4 6// 2 6 4 7……继续阅读 » 4年前 (2021-03-14) 1310浏览 2672个赞
Go语言递归实现的斐波纳契(Fibonacci)算法package main// fib returns a function that returns// successive Fibonacci numbers.func fib() func() int { a, b := 0, 1 return func() int { a, b ……继续阅读 » 4年前 (2021-03-14) 3071浏览 1683个赞
Go语言的Hello Worldpackage mainimport "fmt"func main() { fmt.Println("Hello, world")}……继续阅读 » 4年前 (2021-03-14) 3075浏览 1237个赞
Go语言压缩和解压缩tar.gz文件 golang处理压缩包,我最常用的就是tar.gz了,所以今天写了一个测试一下.代码放这里以后浏览.压缩文件package main import ( "fmt" "os" ……继续阅读 » 4年前 (2021-03-14) 2619浏览 2417个赞
for 循环的 range 格式可以对 slice 或者 map 进行迭代循环。package mainimport "fmt"var pow = []int{1, 2, 4, 8, 16, 32, 64, 128}func main() { for i, v := range pow { fmt.Printf(&……继续阅读 » 4年前 (2021-03-14) 2941浏览 2989个赞
GO语言实现的简单TCP服务代码package mainimport ("net""fmt")var ( maxRead = 1100 msgStop = []byte("cmdStop") msgStart = []byte("cmdContinue&quo……继续阅读 » 4年前 (2021-03-14) 1622浏览 2420个赞