博客
关于我
golang 基础
阅读量:602 次
发布时间:2019-03-11

本文共 1089 字,大约阅读时间需要 3 分钟。

Token

在Go语言中,token是构成源程序的基本不可再分割的单元。在编译过程中,编译器首先将源程序分割成不同的token,这一过程被称为词法分析。Go语言的token主要包括标识符、操作符和分隔符、字面常量等。

标识符

Go语言的标识符有明确的构成规则:开头第一个字符必须是字母或下划线,后面可以跟随任意多个字符、数字或下划线,并且区分大小写。此外,还可以包含Unicode字符。标识符分为两类:一类是程序语言设计者预留的标识符,另一类是编程者自定义的标识符。用户自定义的标识符不能与预留标识符冲突。

预声明标识符主要包括关键字、内置数据类型标识符、内置函数、常量值标识符和空白标识符。用户自定义的标识符则用于包名、变量名、常量名、函数名以及自定义类型名等。

关键字共有25个,可以分类如下:

引导程序整体结构:package、import、const、var、func、defer、go、return声明复合数据结构:struct、interface、map、chan控制程序结构:if、else、for、range、break、continue、switch、select、type、case、default、fallthrough、goto

内置数据类型标识符包括:数值:byte、int、int8、int16、int32、int64、uint、uint8、uint16、uint32、uint64、uintptr浮点型:float32、float64复数型:complex64、complex128字符和字符串型:string、rune接口型:error布尔型:bool

内置函数共有15个,包括make、new、len、cap、append、copy、delete、panic、recover、close、complex、real、image、print、println。这些函数具有全局可见性,虽然以小写字母开头,但并不影响其可用性。

常量值标识符包括:true、false、iota、nil空白标识符《》通常用于声明匿名变量。

操作符和分隔符

Go语言中的操作符共有47个,主要分为以下类别:

算术运算符:+、-、、/、%位运算符:&、|、^、&^、>>、<<赋值和赋值复合运算符::=、=、+=、-=、 assigns /=、%=、|=、^=、&^=、>>=、<<=比较运算符:>、>=、<、<=、==、!=

括号类型:()逻辑运算符:&&、||自增自减操作符:++、--其他运算符::、,、;、.、...

需要注意的是自增和自减操作符是语句而不是表达式。

转载地址:http://hkmvz.baihongyu.com/

你可能感兴趣的文章
POJ2794 Double Patience[离散概率 状压DP]
查看>>
poj2828(线段树查找序列第k小的值)
查看>>
POJ2891:Strange Way to Express Integers——题解
查看>>
poj3045 Cow Acrobats(二分最大化最小值)
查看>>
poj3061 Subsequence(尺取法)
查看>>
poj3074 DLX精确覆盖
查看>>
poj3252(组合数)
查看>>
Qt笔记——QToolBox开发简易QQ聊天界面
查看>>
poj3307
查看>>
Qt笔记——QString与隐式共享、MVC架构
查看>>
Qt笔记——QSemaphore处理生产者/消费者模式
查看>>
Qt笔记——QMutex&QWaitCondition处理生产者消费者模式
查看>>
Qt笔记——QLable+QPixmap图片缩放踩坑
查看>>
Qt笔记——foreach与forever
查看>>
QT程序怎么挪到Linux下,linux+Qt程序如何打包发布
查看>>
Qt知识:视图框架QGraphicsWidget详解
查看>>
SpringBoot中项目启动及定时任务缓存数据库常用数据至内存变量并转换后高频调用
查看>>
Qt知识: 画刷风格
查看>>
QT的OpenGL渲染窗QOpenGLWidget Class
查看>>
QT的C++程序加载动态链接库DLL(Linux下是so)的方式
查看>>