专栏首页Golang语言社区【Go 语言社区】Golang 语言再谈常量

【Go 语言社区】Golang 语言再谈常量

常量是指该程序可能无法在其执行期间改变的固定值。这些固定值也被称为文字。

常量可以是任何像一个整型常量,一个浮点常量,字符常量或字符串文字的基本数据类型。还有枚举常量。

常量是一样,只是它们的值不能自己定义后进行修改常规变量处理。

整型常量

一个整数文字可以是十进制,八进制,或十六进制常数。前缀指定基或基数:0x或0X的十六进制,0表示八进制,并没有为十进制。

一个整数文字也可以有一个后缀为U和L的组合,分别为无符号和长整型。后缀可以是大写或小写,并且可以以任意顺序。

这里是整数常量的一些例子:

212         /* Legal */
215u        /* Legal */
0xFeeL      /* Legal */
078         /* Illegal: 8 is not an octal digit */
032UU       /* Illegal: cannot repeat a suffix */

以下是不同类型的整型常量的例子:

85         /* decimal */
0213       /* octal */
0x4b       /* hexadecimal */
30         /* int */
30u        /* unsigned int */
30l        /* long */
30ul       /* unsigned long */

浮点文本(常量)

浮点字面具有一个整数部分,一个小数点,一个小数部分,和一个指数部分。你可以表示十进制形式或指数形式浮点文字。

同时采用十进制形式表示,则必须包括小数点,指数,或两者并用而指数形式表示,则必须包括整数部分,小数部分,或者两者兼而有之。有符号的指数,通过e或E表示

下面是浮点面值的一些例子:

3.14159       /* Legal */
314159E-5L    /* Legal */
510E          /* Illegal: incomplete exponent */
210f          /* Illegal: no decimal or exponent */
.e55          /* Illegal: missing integer or fraction */

转义序列

有一些字符在Go中,前面有一个反斜杠他们将有特殊的含义,它们被用来表示类似的换行符(\n)或制表符(\t)。在这里,有一些这样的转义序列代码的列表:

转义序列

含意

\\

\ 字符

\'

' 字符

\"

" 字符

\?

? 字符

\a

警报或钟

\b

退格

\f

换页

\n

换行符

\r

回车

\t

水平制表

\v

垂直制表

\ooo

一到三位数字的八进制数

\xhh . . .

一个或多个数字的十六进制数

以下为例子来说明一些转义字符序列:

package main

import "fmt"

func main() {
   fmt.Printf("Hello\tWorld!")
}

当上述代码被编译和执行时,它产生了以下结果:

Hello   World!

字符串文字

字符串文字或常量用双引号“”。一个字符串包含类似于字符文字字符:普通字符,转义序列和通用字符。

您可以使用字符串和分隔使用空格打破一个长行成多行。

下面是字符串的一些例子。所有的三种形式是相同的字符串。

"hello, dear"

"hello, \

dear"

"hello, " "d" "ear"

const 关键字

您可以使用 const 前缀来声明常量使用特定的类型如下:

const variable type = value;

下面的例子说明了它的细节:

package main

import "fmt"

func main() {
   const LENGTH int = 10
   const WIDTH int = 5   
   var area int

   area = LENGTH * WIDTH
   fmt.Printf("value of area : %d", area)   
}

当上述代码被编译和执行时,它产生了以下结果:

value of area : 50

请注意,这是一个良好的编程习惯大写定义常量。

本文分享自微信公众号 - Golang语言社区(Golangweb)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-02-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Golang语言社区--【基础知识】常量

    常量是指该程序可能无法在其执行期间改变的固定值。这些固定值也被称为文字。 常量可以是任何像一个整型常量,一个浮点常量,字符常量或字符串文字的基本数据类型。还有枚...

    李海彬
  • Golang语言社区--【基础知识】常量

    常量是指该程序可能无法在其执行期间改变的固定值。这些固定值也被称为文字。 常量可以是任何像一个整型常量,一个浮点常量,字符常量或字符串文字的基本数据类型。还有枚...

    李海彬
  • Golang语言社区--【基础知识】常量

    常量是指该程序可能无法在其执行期间改变的固定值。这些固定值也被称为文字。 常量可以是任何像一个整型常量,一个浮点常量,字符常量或字符串文字的基本数据类型。还有枚...

    李海彬
  • PHP入门-常量基本规则

    PHP入门-常量基本规则 HTML5学堂:本文是PHP的入门用文章,主要介绍PHP的常量的基本规则以及定义和获取方法。 前几天把PHP的基本语法以及变量的基本规...

    HTML5学堂
  • Python批量检测连通性

    py3study
  • C语言中的字符处理

    C语言中,提供的字符为 char,通常情况下,char 为 unsigned char,即无符号字符,表示单个字符,对于多个字符(字符串),C没有提供相应的类型...

    鲁郭大侠
  • 使用CGP数据库的表达矩阵进行药物反应预测

    主页: CGP website 是 Genomics of Drug Sensitivity of Cancer (GDSC)计划的数据

    生信技能树
  • Android 11 开发者常见问题 | FAQ・第一期

    Q: Android 11 的分区存储是强制的吗?如果 targetSdkVersion 低于 Android 10,运行在 Android 11 的手机上,分...

    Android 开发者
  • 8月份Python招聘情况怎么样?Python爬取招聘数据,并进行分析

    拉勾招聘是专业的互联网求职招聘平台。致力于提供真实可靠的互联网招聘求职找工作信息。今天我们一起使用 python 采集拉钩的 python 招聘信息,分析一下找...

    松鼠爱吃饼干
  • 腾讯云自然语言处理 NLP:产品优势 & 应用场景

    自然语言处理可以说是人工智能领域内落地实践最广的技术之一,NLP产品的应用场景颇为广泛,只要有大量文本数据的场景,都可以使用我们的接口做智能分析,以下列举几个经...

    庞九公子

扫码关注云+社区

领取腾讯云代金券