Go语言学习笔记二: 变量

今天又学了一招如何查看go的版本的命令:go version。另外上一个笔记中的代码还可以使用go run hello.go来运行,只是这种方式不会生成exe文件。

定义变量

使用var关键字来定义变量。例如:

var x int = 100;

顺便说一句,go语言一行代码可以不写分号结束符。

也分单行注释//和多行注释/* */

其实也可以不写类型,go语言会推测出数据类型。例如:

x := 100

写法看上去更简单了。还可以写成

var x = 200

可以一次定义多个变量:

var x, y int = 1, 2

数据类型

类型虽然可以不写,但不代表没有。Go语言具有以下几种数据类型:

  1. 布尔型 bool
  2. 数字: 整形int和浮点型float32, float64
  3. 字符串
  4. 派生类型:指针(Pointer), 数组,结构化(struct), Channel类型,函数类型,切片类型,接口类型(interface),Map类型。

Go也有基于架构的类型,例如:int, uint, uintptr。

uint8, uint16, uint32, uint64, int8, int16, int32, int64。

看到go语言支持这么多类型,我都快疯了,这是要干死所有语言的节奏呀(太消耗脑细胞了)。

package main

import "fmt"

func main() {
var a int = 0;
var b int8 = 127;
var c int16 = 32767;
var d int32 = 2147483647;
var e int64 = 9223372036854775807;
fmt.Println(a, b, c, d, e); var f uint8 = 255;
var g uint16 = 65535;
var h uint32 = 4294967295;
var i uint64 = 18446744073709551615;
fmt.Println(f, g, h, i); var k float32 = 3.1415;
var l float64 = 3.1415;
var m complex64 = 3.1415;
var n complex128 = 3.1415;
fmt.Println(k, l, m, n); w := 1;
var y bool = true
z := false
fmt.Println(w, y, z);
}

参考资料:

https://golang.org/doc/

https://go-zh.org/doc/

http://www.runoob.com/go/go-data-types.html

Go语言学习笔记二: 变量的更多相关文章

  1. Go语言学习笔记(二) [变量、类型、关键字]

    日期:2014年7月19日 1.Go 在语法上有着类 C 的感觉.如果你希望将两个(或更多)语句放在一行书写,它们 必须用分号分隔.一般情况下,你不需要分号.   2.Go 同其他语言不同的地方在于变 ...

  2. 【GO】GO语言学习笔记二

    基本类型: 布尔型:boolean 整型:int8,byte,int16,int,uint,uintptr等 浮点型:float32,float64 复数类型:complex64,complex128 ...

  3. c语言学习笔记 const变量

    在c语言的编程过程中经常会遇到有常数参加运算的运算,比如这种. int a=100*b; 这个100我们叫常数或者叫常量,但是程序中我们不推荐这种直接写常数的方法,有两个缺点. 第一是程序可读性差. ...

  4. [C语言学习笔记二] extern 函数的用法

    extern 用来定义一个或多个变量.其后跟数据类型名和初始值.例如: extern int a =10 它与 int,long long int,double,char的本质区别,在于 extern ...

  5. [C语言学习笔记四]变量与系统的交互

    使用 const 创建常量和使用 volatie 优化变量 C语言中使用 const 定义常量. 例如: const INT a = 10; 此处如果添加a = 20;,编辑器则会报错,因为此处 a ...

  6. C语言学习笔记二---数据类型运算符与表达式

    一.C的基本语法单位 1.标识符:有效长度:31(DOS环境下) 2.关键字:main不是 3.分隔符:空格符,制表符,换行符,换页符 4.注释符:a./*.....*/   b.// 二.C的常用输 ...

  7. C语言学习笔记二

    第二章 数组 一,定义: 数组是有序数据的结合,同一数据类型 整型数组     int arr[10]={0,1,2,4,5,6,7,8,9}; 字符数组     char str[6]={'h',' ...

  8. Go语言学习笔记1 变量,类型以及赋值

    1.变量 1.1 声明变量 使用var关键字可以创建一个指定类型的变量: var i int = 0 var i = 0 var i int 以上三个表达式均是合法的,第三个表达式会将i初始化为int ...

  9. Go语言学习笔记(2)——变量、常量

    1. 变量(变量由字母.数字和下划线组成,且不能以数字开头!)      1.1 第一种 var name type // 未赋值时使用默认值 name = value 1.2 第二种: 根据所赋的值 ...

随机推荐

  1. java中父类的静态方法不能被重写

    Java中父类的静态方法确实不能被重写的,但是有的人可能去做实验发现在子类中去重写父类static方法时,并没什么问题.这里我来具体解释下. public class Parent { public ...

  2. DELPHI如何获取某目录下的所有文件名?

    //=====================================================================// 函数名称: FindPathFiles// 功能描述 ...

  3. 使用C语言实现线性表

    线性表是最常用且最简单的一种数据结构.一个线性表是n个数据元素的有限序列,序列中的每个数据元素,可以是一个数字,可以是一个字符,也可以是复杂的结构体或对象.例如:1,2,3,4,5是一个线性表,A,B ...

  4. WIN7或2008远程连接特别慢的解决方法 【转】

    方法一. 原因在于从vista开始,微软在TCP/IP协议栈里新加了一个叫做“Window Auto-Tuning”的功能.这个功能本身的目的是为了让操作系统根据网络的实时性能,(比如响应时间)来动态 ...

  5. C#获取枚举的描述

    public enum StatusEnum { /// <summary> /// 运行中 /// </summary> [Description("运行中&quo ...

  6. 操作XDocument讲解

    1.首先建立好XML .可以通选自定义EXCEL导出XML格式的数据:(如图) 2 读取XML 文件 具体的详细讲解 可以查看 改网址 :https://blog.csdn.net/dyllove98 ...

  7. Thread类

    Thread类相对于线程池中的线程,使用者有更多的控制权.该类允许创建前台线程,设置线程优先级等.Thread类的构造函数重载为接受ThreadStart和ParameterizedThreadSta ...

  8. 数据库表结构文档查看器 基于netcore

    前言 日常开发业务代码,新接手一块不熟悉的业务时需要频繁的查看对应业务的数据库表设计文档.相比于直接翻看业务代码,有必要提供一个数据库表结构文档查看器来解决这些繁琐的问题. CML.SqlDoc CM ...

  9. EF6 使用SQLite Code First

    SQLite是一款轻型关系型数据库,做一个小网站,用来替代sql server或者access数据库应该会是一个不错的选择. ASP.NET Entity Framework 6是微软平台的著名ORM ...

  10. 【总结】 BZOJ前100题总结

    前言 最近发现自己trl,所以要多做题目但是Tham布置的题目一道都不会,只能来写BZOJ HA(蛤)OI 1041 复数可以分解成两个点,所以直接把\(R^2\)质因数分解一下就可以了,注意计算每一 ...