Go语言学习笔记(四) [array、slice、map]

日期:2014年7月22日 一、array[数组] 1、定义:array 由 [n]<type> 定义,n 标示 array 的长度,而 <type> 标示希望存储的内容的类型。 例如: var arr[10] int arr[0] = 1 arr[1] = 2 数组值类型的:将一个数组赋值给 另一个数组,会复制所有的元素。另外,当向函数内传递一个数组的时候,它将获得一个数组的副本,而不是数组的指针。 2、数组的复合声明。a :=[3]int{1,2,3}或简写为a:=[...]int{1,2,...阅读全文

CSDN博客 2014-07-23 14:20 whxaing2011

golang精华资源

我从几个月前用go学go算是入道了,看了大量的书,做了大量的例子,收藏了不少干货,在这里分享给大家,欢迎关注gostock微信公众号,持续更新:) 1.Learning Go 《学习Go语言》 http://www.miek.nl/projects/learninggo/ 中文版http://mikespook.com/learning-go/ 2.Go by Example Go is an open source programming language designed for build...阅读全文

CSDN博客 2013-12-31 14:13 bai615_2011

Go语言学习笔记(一) [Go语言的HelloWorld]

日期:2014年7月18日 1、简介 Go 编程语言是一个使得程序员更加有效率的开源项目。Go 是有表达力、简 洁、清晰和有效率的。它的并行机制使其很容易编写多核和网络应用,而新奇的类型系统允许构建有ᧄ性的模块化程序。Go 编译到机器码非常快 速,同时具有便利的垃圾回收和强大的运行时反射。它是快速的、静态类型编译语言,但是感觉上是动态类型的,解释型语言。 Go 是第一个实现了简单的(或更加简单的)并行开发,且跨平台的类 C 语言。 2、Go语言文档查看 安装好Go语言之后,其文档可以通过go d...阅读全文

CSDN博客 2014-07-21 08:45 whxaing2011

Go语言学习笔记(三) [控制结构、内建函数]

日期:2014年7月21日 一、控制结构 1、Go中,只有几个控制结构,它没有do或者while循环,有for,灵活的switch语句和if,在switch中可以接受像for那样可选的初始化语句,另外Go中还提供了类型选择和多路通信转接器的select。Go的控制结构的语法和C相比有所不同,它不需要圆括号,但语句体必须总是包含在大括号内。 2、控制结构语法 1)if-else (1)if后紧跟单个条件 例如:if x > 0 { //{必须和if在同一行,这是Go语法规定的,如果换行写,编译就会...阅读全文

CSDN博客 2014-07-21 11:32 whxaing2011

Go语言学习笔记(五) [函数]

日期:2014年7月29日 1、函数定义:func (p type) funcname(q int) (r,s int) {return 0,0 } func: 保留字,用于定义一个函数 (p type) :可选的,用于定义特定的函数类型,俗称方法。 funcname:函数名 (q int) :q作为输入参数,在Go中函数参数是按传值方式传递的。 (r,s int):变量r,s是这个函数的命名返回值,在Go中函数可以返回多个值,如果不想对返回的参数命名,只需要提供类型:(int, int)。如果...阅读全文

CSDN博客 2014-07-30 11:27 whxaing2011

sublime的一些需要安装的插件(go和html)

其实这次主要要说一些go语言的开发,这个先利器吧,然后再说go语言!这次我们说的是sublime这个编辑器,这个东西是我见过小而且功能强悍并且界面灰常美观的一个东西了,用了很长一段时间感觉很不错,而且他的平台支持不错,支持linux macos 和windows下载地址http://www.sublimetext.com/2下载对应的版本安装就可以了 这个东西是收费的,但是可以免费使用只是一段时间有个提示不妨碍使用,如果大家感觉使用好可以买一下,笔者还是免费的!好了下载安装和普通软件一样,但是是...阅读全文

微度网络 2013-07-11 widuu

Go语言(golang)环境的搭建–ubuntu篇

Go语言是谷歌2009发布的第二款开源编程语言。Go语言专门针对 多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。 还是我自己的电脑,我自己安装的是ubuntu 12.04版本的,直接介绍安装吧!其实搭建环境很简单! sudo apt-get install bison ed gawk gcc libc6-dev make //安装c语言的扩展包 sudo apt-get install python-setuptools pyt...阅读全文

Go项目开发----2048小游戏

源码下载: https://github.com/shiyanlou/golang2048_game.git http://download.csdn.net/detail/hzy305365977/8067803 项目开发详细教程: http://www.shiyanlou.com/courses/type/1 一. 2048游戏设计 《2048》由19岁的意大利人Gabriele Cirulli于2014年3月开发。游戏任务是在一个网格上滑动小方块来进行组合,直到形成一个带有有数字2048的...阅读全文

开源中国博客 2014-10-22 13:41 LSoam

用go实现web日志分析及网页挂马关键字检测

本程序主要实现网页挂马关键字检测,原理是这样的,通过定时分析用户访问的IIS web日志,对日志的里的URL进行访问,然后检索是否包含相关的关键字,有就入库,这只是go实现自动检索及入库,可以加个前端,实现加关键及报警功能 package main import ( "bufio" "code.google.com/p/mahonia" "fmt" "io" "io/ioutil" "labix.org/v2/mgo" "labix.org/v2/mgo/bson" "log" "net" "n...阅读全文

开源中国博客 2014-10-22 12:03 学思

Golang学习(1)——fmt 包

Golang学习 - fmt 包--------------------// Print 将参数列表 a 中的各个参数转换为字符串并写入到标准输出中。// 非字符串参数之间会添加空格,返回写入的字节数。func Print(a ...interface{}) (n int, err error)// Println 功能类似 Print,只不过最后会添加一个换行符。// 所有参数之间会添加空格,返回写入的字节数。func Println(a ...interface{}) (n int, err...阅读全文

51CTO博客 2016-11-21 22:55:25 1160636144

go语言的标准输入-scan 和bufio

除了f mt 和 os ,我们还需要用到 bufio 来实现带缓冲输入(input)和输出(output) 读取用户的输入数据 我们怎样读取用户从键盘(控制台)输入的数据?输入指从键盘或其它标准输入(os.Stdin)读取数据。最简单的方法是使用fmt包里的Scan-或Sscan-系列函数,下面用个例子说明一下: //read input from the console: package main import "fmt" var ( firstName, lastName, s string...阅读全文

开源中国博客 2014-10-22 11:50 学思

Go语言学习笔记--类型、指针、面向对象

Go 有指针,但是没有指针运算。你不能用指针变量遍历字符串的各个字节. 通过类型作为前缀来定义一个指针’*’:var p *int。现在p 是一个指向整数值的指针。 所有新定义的变量都被赋值为其类型的零值,而指针也一样。一个新定义的或者没有任何指向的指针,有值nil。在其他语言中,这经常被叫做空(NULL)指针,在Go 中就是nil。让指针指向某些内容,可以使用取址操作符(&) 如果一个method的receiver是*T,你可以在一个T类型的实例变量V上面调用这个method,而不需要&V去调...阅读全文

CSDN博客 2013-07-11 09:04 Mervyn1205

Go语言_并发篇

http://www.cnblogs.com/yjf512/archive/2012/06/06/2537712.html Go语言_并发篇 2012-06-06 09:55 by 轩脉刃, 当被问到为什么用Go语言,一定不得不提的是Go语言的并发程序编写。在C语言中编写非常繁琐复杂的并发程序在Go语言中总是显得如此便捷。 Go中并发程序依靠的是两个:goroutine和channel 理解什么是goroutine? 对于初学者,goroutine直接理解成为线程就可以了。当对一个函数调用go,...阅读全文

CSDN博客 2013-09-23 23:05 maimang1001

使用Go语言一段时间的感受

作者:Windstorm 来源:http://www.kunli.info/2012/03/03/golang-feeling/ 有一段时间没更新了。最近在忙一个Server+Client的项目,Client是Android手机,大概也就是几十的规模。Server是纯Golang实现,没有apache或者ngix这种web server,也没有数据库,自己写了个文件管理module,handle这种小规模的服务没问题。算下来接触Golang也有四个多月了,断断续续写了一些东西,这里纪录一下心得吧...阅读全文

CSDN博客 2012-03-17 20:04 heiyeshuwu

Go 语言中手动内存管理

Go 语言中手动内存管理 2011-05-05 14:59:31 http://www.douban.com/note/149163333/ Go 语言是自带GC的, 相对C语言等的手动内存管理省事很多, 弊端便是会消耗更多的内存, 以及在GC时导致整个程序的停顿. 在某些特殊场合, 如果能够可选地手动进行内存管理, 效果会好不少. Go 目前的 GC 实现比较简单(mark-sweep算法), 进程的内存使用量取决于两次GC操作直接的内存申请量(不能重复使用), 而且通常GC发生在函数调用的深...阅读全文

CSDN博客 2013-10-21 14:56 varding

uint 与 int 的区别 (golang语言)

上面是图,下面是源码: package main import ( "fmt" _ "time" ) func main() { a := byte(255) //11111111 这是byte的极限, 因为 a := byte(256)//越界报错, 0~255正好256个数,不能再高了 b := uint8(255) //11111111 这是uint8的极限,因为 c := uint8(256)//越界报错,0~255正好256个数,不能再高了 c := int8(127) //01111...阅读全文

CSDN博客 2014-01-01 16:13 mokt2001

使用Sublime 2 配置GoLang语言

使用Sublime 2 配置GoLang语言 一、准备工作: 1、下载Go语言包: https://code.google.com/p/go/downloads/list 2、下载Git: https://code.google.com/p/msysgit/downloads/list 3、下载Sublime 2:http://www.sublimetext.com/2 二、安装: 1、安装go(一路next),他会自动帮你配置环境变量 2、安装sublime(一路next) 3、安装git(一...阅读全文

CSDN博客 2013-12-31 15:43 bai615_2011

Golang中如何模拟C语言中的if(scanf(…)==EOF)来控制输入的终止

相信很多从C/C++转到Golang的朋友们都经常会对Go中的输入控制感到头疼。。。尤其是如果要在Go中模拟C语言中的如下代码会遇到不小困惑: char input[100]; while (1) { if (scanf("%s", input) == EOF) { printf("输入结束\n"); break; } } 上面这段代码在控制台中输入一个Ctrl+Z(EOF) 就可以终止输入了: C语言中的 int scanf() 函数返回的是一个int类型,它的值只有三种情况: (1) 如果一...阅读全文

CSDN博客 2014-03-06 22:30 u011774512