Go语言基本的语法和内置数据类型初探

 更新时间:2015年10月29日 15:04:21   投稿:goldensun  
这篇文章主要介绍了Go语言基本的语法和内置数据类型,是golang入门学习中的基础知识,需要的朋友可以参考下

Go令牌
Go程序包括各种令牌和令牌可以是一个关键字,一个标识符,常量,字符串文字或符号。例如,下面的Go语句由六个令牌:

复制代码 代码如下:

fmt.Println("Hello, World!")

个体令牌是:
复制代码 代码如下:

fmt
.
Println
(
"Hello, World!"
)

行分离器
在Go程序,行的分隔符关键是一个语句终止。也就是说,每一个单独语句不需要特殊的分隔线; 在C编译器转到内部的地方; 作为语句终止符,表示一个逻辑实体的结束。

例如,下面是两个不同的陈述:

复制代码 代码如下:

fmt.Println("Hello, World!")
fmt.Println("I am in Go Programming World!")


注释
注释就像帮助文本在你的Go程序,它们是由编译器忽略。他们开始使用字符/*和终止使用*/如下图所示:

复制代码 代码如下:

/* my first program in Go */


不能在注释中的含有注释,并且它们不能在一个字符串或字符文字出现。

标识符
Go标识符是用来标识变量,函数,或任何其它用户定义的项目名称。一个标识符开始以字母A到Z或a到z或下划线_后跟零个或多个字母,下划线和数字(0〜9)。

复制代码 代码如下:

identifier = letter { letter | unicode_digit } .


Go语言不允许标识符中的标点字符,如@,$和%。Go是一种区分大小写的编程语言。所以, Manpower 和 manpower 在Go中是两个不同的标识符。这里是可接受的标识符的一些例子:

复制代码 代码如下:

mahesh   kumar   abc   move_name   a_123
myname50   _temp   j   a23b9   retVal


关键词
下面的列表显示了Go的保留字。这些保留的字可以不被用作常量或变量,或任何其他的标识符名称。

20151029150154607.png (628×173)

在Go中空白格
仅包含空格,可能与注释行,被称为一个空行,Go编译器完全忽略它。

空白是在Go中用来描述空格,制表符,换行符和注释术语。空格分隔从另一个声明的一部分,使编译器能够找出在一份声明中的一个元素,如int,结束且下一个元素开始。因此,在下面的语句:

复制代码 代码如下:

 var age int;


必须有至少一个空白字符(通常是一个空格)int和age之间的编译器,以便能够区分它们。在另一方面,在下面的语句:

复制代码 代码如下:

fruit = apples + oranges;   // get the total fruit


无空白字符是必要的,fruit和=之间或=和apples,虽然是自由的,如果想便于阅读的目的,最好包括一些空格。

Go语言数据类型
在Go编程语言,数据类型指用于声明变量或不同类型的功能的广泛的系统。变量的类型决定了有多少空间占用的存储和存储方式的位模式将被解释。

Go的数据类型可分类如下:

20151029150217592.png (620×311)

数组类型和结构类型被统称为聚合类型。函数的类型指定的一组具有相同的参数和结果类型所有函数。我们将看到基本类型在下面的部分,而其他类型将包括在后面的章节。

整型
预定义架构无关的整数类型有:
20151029150234416.png (621×488)

浮点类型
预定义架构无关的浮点类型是:

20151029150251488.png (636×268)

n位整数的值是n比特,并使用2的补码算术运算表示。

其它数值类型
还有一组数字类型与执行的具体大小:

20151029150309133.png (625×322)

相关文章

  • golang 日志库ZAP[uber-go zap]示例详解

    golang 日志库ZAP[uber-go zap]示例详解

    ZAP是由Uber开源的高性能Go语言日志库,支持多种日志级别及基本信息打印,虽然ZAP本身不支持日志分割,但可以结合lumberjack进行日志切割,实现日志按文件大小、时间或间隔切割等功能,ZAP提供Logger和SugaredLogger两种日志记录器
    2024-10-10
  • 简单聊聊Go语言中空结构体和空字符串的特殊之处

    简单聊聊Go语言中空结构体和空字符串的特殊之处

    在日常的编程过程中,大家应该经常能遇到各种”空“吧,比如空指针、空结构体、空字符串等,本文就以 Go 语言为例,一起来看看空结构体和空字符串在 Go 语言中的特殊之处吧
    2024-03-03
  • Go语言之重要数组类型切片(slice)make,append函数解读

    Go语言之重要数组类型切片(slice)make,append函数解读

    这篇文章主要介绍了Go语言之重要数组类型切片(slice)make,append函数用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • go1.8之安装配置具体步骤

    go1.8之安装配置具体步骤

    下面小编就为大家带来一篇go1.8之安装配置具体步骤。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Go语言中多字节字符的处理方法详解

    Go语言中多字节字符的处理方法详解

    这篇文章主要给大家介绍了关于Go语言中多字节字符的处理方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-10-10
  • 使用go xorm来操作mysql的方法实例

    使用go xorm来操作mysql的方法实例

    今天小编就为大家分享一篇关于使用go xorm来操作mysql的方法实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-04-04
  • golang实现基于channel的通用连接池详解

    golang实现基于channel的通用连接池详解

    这篇文章主要给大家介绍了关于golang实现基于channel的通用连接池的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-02-02
  • 详解Go语言如何检查系统命令是否可用

    详解Go语言如何检查系统命令是否可用

    这篇文章主要为大家详细介绍了Go语言通过编写一个函数,利用Go语言标准库中的功能来检查系统命令是否可用,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-01-01
  • Golang语言如何高效拼接字符串详解

    Golang语言如何高效拼接字符串详解

    最近在做性能优化,有个函数里面的耗时特别长,看里面的操作大多是一些字符串拼接的操作,而字符串拼接在 golang 里面其实有很多种实现,下面这篇文章主要给大家介绍了关于Golang语言如何高效拼接字符串的相关资料,需要的朋友可以参考下
    2021-11-11
  • 解决panic: assignment to entry in nil map问题

    解决panic: assignment to entry in nil

    这篇文章主要介绍了解决panic: assignment to entry in nil map问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2008-01-01

最新评论