golang
Linux_痞子
痞子
展开
-
go学习
package mainimport ( "errors" "fmt")//在go语言中的不可思议的事情返局部变量的指针,一切okfunc myfun() *int { var a int = 10 return &a}//用来处理常规错误func myerror() { err := errors.New("emit macho dwarf:elf h原创 2016-05-24 20:59:39 · 411 阅读 · 0 评论 -
go slice与函数
package mainimport ( "fmt")func myfun(a []int){ fmt.Println(a) a[0] = 8 a[1] = 8 a[2] = 8 fmt.Println(a)}func main() { a := make([]int,3) a[0] =原创 2016-05-22 23:21:44 · 697 阅读 · 0 评论 -
go http协议和文件操作
package mainimport ( "fmt" "net/http" "os")func main() { Client := &http.Client{} url := "http://www.baidu.com" req, err := http.NewRequest("GET", url, nil) if err != nil {原创 2016-06-05 01:56:33 · 1195 阅读 · 0 评论 -
go text/templete模板
抽空把go 的text/templete模板整理学习了,现在总结下。 步骤 1、定义数据类型type Opt struct{ Name string Age int Score float32}one := Opt{"xiao chao",26,90}two := Opt{"xiao er",29,89}2、建立模板 one_str := "one_str :原创 2016-06-11 23:47:44 · 607 阅读 · 0 评论 -
go数据库操作
package mainimport ( "database/sql" _ "github.com/go-sql-driver/mysql")func main() { /* //打开数据库 db, err := sql.Open("mysql", "root:12原创 2016-06-06 00:12:59 · 1136 阅读 · 0 评论 -
go 复杂结构和json字符串
在go中会经常拼接复杂的结构和拼接复杂的json字符串go-sampleJson简单测试package mainimport ( "fmt" sampleJson "go-simplejson-master")type User struct { Name string Age int}func main() { j, _ := sampleJson.N原创 2016-10-24 18:46:24 · 2217 阅读 · 0 评论 -
reflect包copy函数的使用
关于golang的reflect包copy函数的使用package mainimport( "reflect" "fmt")type Student struct{ Name string`json:"name"` Age int`json:"age"` Gender string`json:"gender"`}func main() { src原创 2017-02-26 23:18:37 · 2534 阅读 · 0 评论 -
关于\xEF\xBB\xBF的介绍
UTF-8编码中BOM的检测与删除 所谓BOM,全称是Byte Order Mark,它是一个Unicode字符,通常出现在文本的开头,用来标识字节序(Big/Little Endian),除此以外还可以标识编码(UTF-8/16/32),如果出现在文本中间,则解释为zero width no-break space。 注:Unicode相关知识的详细介绍请参考UTF-8, UTF-16, UT翻译 2017-07-04 09:37:40 · 14345 阅读 · 0 评论 -
golang 递归遍历树节点
在数据结构的组织中重要的一节一定会包含”树”,和相应的处理”树”的递归函数。这一节,就是说明如何的处理工作当中的很重要的数据展现,行政区划的处理。 var str = [ { "code":1, "p_code":0, "name":"c1" }, { "co原创 2017-06-24 20:26:53 · 5986 阅读 · 2 评论 -
golang获取命令行参数
goalng 解析命令行参数package mainimport ( "flag" "fmt")func main() { ip := flag.String("ip", "127.0.0.1", "ipAddr") port := flag.Int("port", ":8080", "http listen port") var databaseType原创 2017-08-01 18:55:21 · 806 阅读 · 0 评论 -
golang 程序运行影藏dos黑窗口
通过go的标准库exec调用cmd命令时会闪弹黑窗口,为解决此问题在windows下可以用win32 API 的 WinExec。此问题主要出现在带UI或无控制台的程序调用cmd时。编译go时加入参数: go build -ldflags=”-H windowsgui”翻译 2018-02-06 10:54:48 · 4013 阅读 · 0 评论 -
go语言的变量声明
全局变量 1、可以使用var()var( a = 1 b = 2 c = 3 )a,b,c := 1,2,32、局部变量只可以使用并行方式赋值,不可以使用var()赋值a,b,c := 1,2,3测试go的变量默认值func main() { fmt.Println("hello world!,你好,世界") var原创 2016-05-22 21:31:29 · 914 阅读 · 0 评论 -
go 接口
package mainimport ( "fmt" "reflect")type student struct { name string}type GetInfo interface { GetName() string SetName(name string)}func (stu *student) GetName() string { r原创 2016-06-04 13:28:35 · 476 阅读 · 0 评论 -
go 类型练习
package mainimport ( "fmt" "math")type rect struct { width, height float32}type cir struct { r float32}type myInt int64func (a myInt) area() myInt { return a}func (a *rect) ar原创 2016-06-04 12:10:05 · 480 阅读 · 0 评论 -
go学习
方法package mainimport ( "fmt" "math")type Rect struct { width, heigtht float32}type Cir struct { r float32}func (r Rect) Cal() float32 { return r.heigtht * r.width}func (r Cir原创 2016-05-24 22:21:25 · 528 阅读 · 0 评论 -
go方法重写
package mainimport "fmt"//about receiver functiontype Student struct { Human school string}type Employer struct { Human company string}type Human struct { name string ...原创 2016-05-25 09:31:41 · 6075 阅读 · 3 评论 -
go并发
package mainimport "fmt"import "runtime"//go并发程序func say(s string) { for i := 0; i < 5; i++ { runtime.Gosched() //系统让出时间片 fmt.Println(s) }}func main() { go say("world") /原创 2016-05-25 11:13:48 · 542 阅读 · 0 评论 -
go 容器与接口
package mainimport ( "fmt")type Human struct { name string age string}type Student struct { Human school string}type Employer struct { Human company string}type Cont原创 2016-05-25 18:00:23 · 424 阅读 · 0 评论 -
go数组作为函数参数传递
func myfun(a *[]int) { fmt.Print(a) //a[0] = 5 (*a)[0] = 5 //fmt.Print("here", a, "\n")}func test() { a1 := 1 b1 := 2 var a []*int = []*int{&a1, &b1} fmt.Print(a)}fun原创 2016-05-25 18:23:28 · 5197 阅读 · 0 评论 -
go文件操作
go语言支持的文件操作很多 1、传统的文件操作 导入文件操作需要的包import "os"1、文件的打开f := os.Open(filepath)2、文件的读取f.Read([]byte)3、文件的关闭f.Close()这里写代码片openfile, err := os.Open(“test.go”)//正确打开文件返回err := nil //这里如果文件打开异常,则抛出错误 if er原创 2016-05-27 13:37:12 · 1355 阅读 · 0 评论 -
go语言的模板,text/template包
定义模板就是将一组文本嵌入另一组文本里传入string--最简单的替换package mainimport ( "os" "text/template")func main() { name := "China" tmpl, err := template.New("test").Parse("hello, {{.}}") //建立一个模板,内容是"hello,原创 2016-05-29 10:55:38 · 2908 阅读 · 1 评论 -
go行读取文件
f, err := os.Open("test.txt")if err != nil { panic(err)}defer f.Close()rd := bufio.NewReader(f)for { line, err := rd.ReadString('\n') //以'\n'为结束符读入一行 if err != nil || io.EOF == err翻译 2016-05-30 00:54:34 · 1348 阅读 · 0 评论 -
ubuntu 安装go语言开发环境
There are many ways to configure the Go development environment on your computer, you can choose any one you like. The three most common ways are as follows.1、Official installation packages The Go tea翻译 2016-05-21 00:45:23 · 915 阅读 · 0 评论 -
征服go开始
上一个主题说明了,在ubuntu下的go语言开发环境的搭建,下面就开始我们征服go的征程了,为了首先来了解go语言的特色,我们还是首先来一个最简单的测试“hello world!”测试代码。在go语言中的实现代码是很简洁的。下面就进行最间的测试代码编写。package mainimport "fmt"//导入包,包含打印函数func main(){ fmt.Print("hello worl原创 2016-05-21 15:28:19 · 597 阅读 · 0 评论 -
数组元素查重
数组元素查重,帅选出重复的数据type person struct { name, id_card_no string}//家系中的相同人员筛选func familyHasSamePerson(nodeViewList []*person)([]person) { nodeMap := make([]person, 0) pList := make([]...原创 2018-03-18 12:32:06 · 691 阅读 · 0 评论