【Go语言的学习日记1】教程文章相关的互联网学习教程文章

CentOS VSCode调试go语言出现:exec: "gcc": executable file not found in PATH【代码】

CentOS VSCode调试go语言出现:exec: "gcc": executable file not found in PATH 解决方案:执行如下命令安装GCC,然后重新启动VSCode即可sudoyuminstallgcc #安装GCC [fengxm@centos7-feng ~]$ whichgcc /usr/bin/gcc #验证安装完毕 CentOS VSCode调试go语言出现:exec: "gcc": executable file not found in PATH原文:https://www.cnblogs.com/fengxm/p/9907589.html

go语言的坑【代码】

go语言在for循环中遍历的临时变量地址是一样的func main() {//SetLogConfToEtcd()for i := 0; i < 5; i++ {a := ifmt.Printf("%p\n", &i) //可以看到i的地址都是一样的,也就是说i是复用的fmt.Printf("%p\n", &a) //如果需要将遍历的变量地址赋值传给别的变量,可以在循环中声明一个新的临时变量来接受} } 0xc0000ce7e8 0xc0000ce7f0 0xc0000ce7e8 0xc0000f2008 0xc0000ce7e8 0xc0000f2010 0xc0000ce7e8 0xc0000f2018 0xc0000ce7e...

Go语言 复合数据类型【集合map】【代码】

目录集合(Map)1.1 什么是Map1.2 Map的使用1.2.1 使用make()创建map1.2.2 map语法结构1.2.3 代码示例1.3 Map的遍历1.4 Map结合Slicwe1.4.1 代码示例1.5 Map是引用类型1.5.1 map的数据类型1.5.2 代码示例集合(Map)1.1 什么是Mapmap是go中的内置类型,它将一个值与一个键关联起来。可以使用相应的键检索值Map是一种无序的键值对的集合。Map最重要的一点就是通过key来快速检索数据,key类似于索引,指向数据的值Map是一种集合,所以...

go语言之JSON与md5值【代码】

go语言之JSON与md5值 一、Json是什么?是一种轻量级的数据交换语言,用于数据交换。Json由于比XML更小、更快、更易解析,以及浏览器的内建快速解析支持,使得其更实用于网络数据交互。目前我们看到很多的开放平台,基本上都是采用了JSON作为他们的数据交互的接口。go语言提供了内置的encoding/json 标准库,在github上提供了更快的json标准库,github.com/pquerna/ffjson/ffjson二、JSON数据的编码和解码编码函数:func Marshal(v ...

GO语言不要用共享内存来通信,要用通信来共享内存【代码】

这句话是推荐使用channel来实现 "让同一块内存在同一时间内只被一个线程操作" 的目的 先看一个简单的示例代码package mainimport ("fmt""net/http" )var j intfunc HelloServer(w http.ResponseWriter, req *http.Request) {j++fmt.Println(j) }func main() {http.HandleFunc("/", HelloServer)http.ListenAndServe(":8080", nil) }每个http请求都会创建一个新的goroutine,在高并发下,多个goroutine对全局变量 j 进行同时读写。有...

GO语言面向对象【代码】

当初开发go语言的时候就是因为C++的特性太过于繁杂,从而使得很多C++的开发者因为C++的特性而头疼,go语言成功的精简了C++的特性,使其很简洁,很少的特性,却可以完成很多的事情。go语言中并没有像C++,Java语言中这类的Class,它只含有像C语言中的结构体,用结构体和指针等特性,完成一个类的作用,很巧妙的使用了指针和结构体,不仅是go的面向对象,包括go语言中的map等操作都是借助了结构体。其实,说白了,C++、Java等面向对象...

go语言使用go-sciter创建桌面应用(六) Element元素操作和Event事件响应【代码】【图】

详细的文档请看下面两个链接:https://sciter.com/docs/content/sciter/Element.htm https://sciter.com/docs/content/sciter/Event.htm demo8.html代码如下:<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>tiscript脚本学习</title><style>#mouse {border: 1px solid #ccc;width: 500px;height: 500px;}</style> </head> <body> <div id="box"><ul><li>1111</li><li>2222</li><li>3333</li></ul> </div> ...

关于阿里云ESC上go语言项目编译6l: running gcc failed: Cannot allocate memory【图】

前段时间将自己的阿里云服务器上的系统由centos 6.5换为了ubuntu 14,其他的硬件配置都没有发生改变,将服务器上的数据恢复并且重新安装了golang的编译环境后,发现使用go build编译稍微大一点的golang项目就会报错:/usr/local/go/pkg/tool/linux_amd64/6l: running gcc failed: Cannot allocate memory一直想不通为啥换了个系统就会报这个错,字面意思是gcc分配内存失败,应该是内存不够用,机器配置是1G内存,free -m 发现尚有4...

Go语言实现简单的留言本【图】

做了个简单的留言本用来练习http与template. 主Go代码: package main//Golang版本的留言本 //author:Xiong Chuan Liang //date:2015-3-2import ("fmt""html/template""io/ioutil""net/http""os" )func main() {http.Handle("/images/", http.FileServer(http.Dir("asset")))http.HandleFunc("/", listHandler)http.HandleFunc("/add", addHandler)http.ListenAndServe(":8055", nil) }func addHandler(w http.ResponseWriter, r ...

go语言 类型:数组【代码】

在go语言中数组array是一组特定长度的有序的元素集合。go的数组类型由两部分组成——类型和长度,二者缺一不可。数组本来就是一块存储相同类型元素的连续内存空间,因此决定一个数组的类型,必然需要决定其存储元素的类型以及存储多少个元素。在Go语言中,数组长度在定义后就不可更改。数组是值类型,每次传递都将产生一份副本。例子: package mainimport ("fmt""strconv" )func main() {var a [5]int //定义数组 5个整数...

Go语言(工程和包)【图】

在Go语言中,包是函数与数据的集合,用package定义一个包,包的名字不一定要跟文件名字一样,接下来,将学习如何使用Go语言的包。 首先,我们创建一个Stack包,然后用一个主程序来调用这个包里面的方法。这实际上涉及到Go语言中的工程的分包和编译。Go语言是这么来配置它的工程的,如下图 其中package是工程的根目录,我们需要事先设置环境变量GOPATH,如下 而bin目录和pkg目录是go编译自动生成的,而src是手动创建的。所...

go语言的环境变量【代码】

在命令提示符下输入 go envset GOARCH=amd64 //CPU的架构 set GOBIN= //工作目录下的BIN文件夹 set GOEXE=.exe set GOHOSTARCH=amd64 //想要交叉编译的CPU架构 set GOHOSTOS=windows //想要交叉编译的操作系统 set GOOS=windows //当前的操作系统 set GOPATH=D:\gopath //工作目录 set GORACE= set GOROOT=C:\Go //安装目录 set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64 set GO15VENDOREXPERIMENT= set CC=gcc set GOGCCFLAGS=-m64...

go语言 strconv.ParseInt 的例子【代码】

golang strconv.ParseInt 是将字符串转换为数字的函数,功能灰常之强大,看的我口水直流.func ParseInt(s string, base int, bitSize int) (i int64, err error)参数1 数字的字符串形式参数2 数字字符串的进制 比如二进制 八进制 十进制 十六进制参数3 返回结果的bit大小 也就是int8 int16 int32 int64代码:package mainimport ("strconv" )func main() {i, err := strconv.ParseInt("123", 10, 32)if err != nil {panic(err)}printl...

Go语言基础之网络编程【代码】

现在我们几乎每天都在使用互联网,我们前面已经学习了如何编写Go语言程序,但是如何才能让我们的程序通过网络互相通信呢?本章我们就一起来学习下Go语言中的网络编程。 关于网络编程其实是一个很庞大的领域,本文只是简单的演示了如何使用net包进行TCP和UDP通信。如需了解更详细的网络编程请自行检索和阅读专业资料。互联网协议介绍互联网的核心是一系列协议,总称为”互联网协议”(Internet Protocol Suite),正是这一些协议规定...

Go语言程序开发初涉【图】

由于工作原因,现在开始学习Go语言。这也是本人第一篇关于Go的博客。本文将通过一些基本概念的说明和实际案例,使得大家能快速对Go程序的开发有个了解。一. Go的安装 : 在 https://www.studygolang.com/dl 上可下载到go的各个平台的安装程序,安装过程在此忽略,安装后,在{Go的主目录}后称GOROOT下有个bin目录,下面有个go的可执行程序,这个程序我们可称之为 go tool。这个go tool在安装时一般会被配置到PATH的环境变量中。...