上节我们讲了GO语言的环境搭建以及创建了Hello World程序。今天学习一下Go语言基础语法

开发前准备

1. 首先创建一个Project02

2. 在Project02下面新建一个test1.go(关于go文件取名问题提一嘴,现在最好不要取XXX_test.go,https://cloud.tencent.com/developer/article/1820021)

3. GoLang中文网标准库文档:https://studygolang.com/pkgdoc

转义字符学习

1. 首先还是在test1.go中写个123运行看看是否成功,点击Run按钮Run Without Debugging。务必要是package main,不然的话运行不成功的。

2. 转义字符“\”

\\代表一个\, \"代表一个",\t代表制表符,\n代表换行符

\r 代表一个回车,会回到行首输出。但是VS Code输出有问题,用控制台又是正常的。

\b代表退格,但是VS Code输出有问题,用控制台又是正常的。

变量学习

背景:

变量声明方式:https://www.cnblogs.com/hw1988/p/14302405.html。

package main

import "fmt"

func main() {
// 方式1:var 变量名 变量类型
var name string
var age int
var isOK bool
name = "Amy"
age = 18
isOK = true
fmt.Printf("name = %s, age = %d, isOK = %t\n", name, age, isOK) // 方式2: 批量声明
var (
name1 string
age1 int
isOK1 bool
)
name1 = "Amy1"
age1 = 19
isOK1 = false
fmt.Printf("name1 = %s, age1 = %d, isOK1 = %t\n", name1, age1, isOK1) // 方式3:变量初始化 var 变量名 类型 = 表达式
var name2 string = "Amy2"
var age2 int = 20
var isOK2 bool = true
fmt.Printf("name2 = %s, age2 = %d, isOK2 = %t\n", name2, age2, isOK2) // 方式4:go语言支持类型推导(将变量类型省略)
var name3, age3, isOK3 = "Amy3", 21, false
var sex = "girl"
fmt.Printf("name3 = %s\tage3 = %d\tisOK3 = %t\t", name3, age3, isOK3)
fmt.Printf("sex = %s\n", sex) // 方式5:短变量声明
name4 := "Bob"
age4 := 18
fmt.Printf("name4 = %s\tage4 = %d\n", name4, age4) }

1. 注意问题:

  1. Go语言中定义的变量一定要使用,不然会报错

  2. 格式化输出用Printf而不是PrintIn

2. 定义int8类型的变量,注意int8的取值范围是-128~127,占用一个字节,大于127是会溢出的。

3. 数据类型的转换

分析一下num3的值为什么是-51。首先num2的值为210,210是大于127的,看一下210用二进制表示为1101 0010,最高位是1,所以表示一个负数,负数在电脑中是以补码形式存储的,首先保留最高位不变,其他位置取反得到1010 1101,最后将得到的数加1就是电脑中存储的值1010 1110结果就是-46,所以num2强转之后的结果是-46,num3 = num2 -5,因此num3的值就为-51。

第二篇 -- Go语言转义字符与变量声明的更多相关文章

  1. 第二篇 Python初识别及变量名定义规范

    第一个Python程序 可以打开notepad或者其他文本编辑器,输入:print("Hello Python!"),将文件保存到任意盘符下,后缀名是  .py 两种python程 ...

  2. 第二篇T语言实例开发(版本5.3),福彩3D摇号器

    ---恢复内容开始--- 福彩3D摇号器 先验知识功能的含义与使用 功能是TC源程序的基本模块,通过对功能模块的调用实现特定的功能,TC语言中的功能相当于其他高级语言的子程序. 在TC里面,功能分为三 ...

  3. Go语言入门之变量声明

    1.使用var关键字声明变量,如果没有初始化,则变量默认为零值. var a string "hello world" 2.根据值自行判定变量类型 3.多变量声明 ,, 4.使用v ...

  4. 第二篇T语言代码编写技巧

    控件事件 控件 控件是对数据和方法的封装.控件可以有自己的属性和方法.属性是控件数据的简单访问者.方法则是控件 的一些简单而可见的功能. 概述 1.控件应用 使用现成的控件来开发应用程序时,控件工作在 ...

  5. nginx基础学习第二篇:nginx内置变量的使用

    ngx_http_core模块提供的内置变量有很多,常见的有 $uri,用来获取当前请求的uri,不含请求参数. $request_uri,用来获取请求最原始的uri,包含请求参数,且未解码. $re ...

  6. 浅谈JavaScript变量声明提升

    前段时间阿里实习生内推,一面就被刷了,也是郁闷.今天系统给发通知,大致意思就是内推环节不足以了解彼此,还可以参加笔试,于是赶紧再投一次.官网流程显示笔试时间3月31日,时间快到了,开始刷题.网上搜了一 ...

  7. 【C语言探索之旅】 第一部分第四课第二章:变量的世界之变量声明

    内容简介 1.课程大纲 2.第一部分第四课第二章:变量的世界之变量声明 3.第一部分第四课第三章预告:变量的世界之显示变量内容 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布 ...

  8. Go语言规格说明书 之 变量声明(Variable/Short variable declarations)

    go version go1.11 windows/amd64 本文为阅读Go语言中文官网的规则说明书(https://golang.google.cn/ref/spec)而做的笔记,完整的介绍Go语 ...

  9. 第二篇.1、python基础之数据类型与变量

    一.变量 1 什么是变量之声明变量 #变量名=变量值 age=18 gender1='male' gender2='female' 2 为什么要有变量 变量作用:“变”=>变化,“量”=> ...

随机推荐

  1. 【SQLite】SQLite文件突然变大怎么办?瘦身办法

    使用VACUUM命令即可: VACUUM 命令通过复制主数据库中的内容到一个临时数据库文件,然后清空主数据库,并从副本中重新载入原始的数据库文件.这消除了空闲页,把表中的数据排列为连续的,另外会清理数 ...

  2. Ajax 和 JSON

    Ajax:异步更新页面的技术,必须在http或者https网络网络协议下使用             1.原生js实现:共4步             2.jQuery:$.ajax(配置对象);   ...

  3. springboot+kurento+coturn+contos的视频通讯服务搭建

    springboot+kurento+coturn+contos的视频通讯服务搭建 服务器CentOS Linux release 7.9.2009 (Core) 本案例成功于20210628 1.默 ...

  4. 重新整理 .net core 实践篇—————grpc[三十三]

    前言 简单整理一下grpc. 正文 什么是grpc? 一个远程过程调用框架,可以像类一样调用远程方法. 这种模式一般来说就是代理模式,然后都是框架自我生成的. 由google 公司发起并开源,故而前面 ...

  5. [源码解析] 深度学习分布式训练框架 horovod (8) --- on spark

    [源码解析] 深度学习分布式训练框架 horovod (8) --- on spark 目录 [源码解析] 深度学习分布式训练框架 horovod (8) --- on spark 0x00 摘要 0 ...

  6. Kubernetes网络的iptables模式和ipvs模式支持ping分析

    1.iptables模式无法ping通原因分析 iptables模式下,无法ping通任何svc,包括clusterip.所有ns下,下面来分析原因: 查看kubernetes的网络模式 curl 1 ...

  7. 6.11、制作windos虚拟机

    1.下载kvm支持windows系统的驱动程序: cd /tmp/ wget https://fedorapeople.org/groups/virt/virtio-win/direct-downlo ...

  8. 登录华科校园网,我用Socket

    登录华科校园网,我用Socket 导语: 找一个华科学生问一问,学校的网络怎么样?得到的大多数是负面回答.其实不论是从覆盖区域.网络稳定性.还是速度来说,华科做的都还是可以的(24:00断网除外).可 ...

  9. 9、SpringBoot整合之SpringBoot整合SpringSecurity

    SpringBoot整合SpringSecurity 一.创建项目,选择依赖 选择Spring Web.Thymeleaf即可 二.在pom文件中导入相关依赖 <!-- 导入SpringSecu ...

  10. shell 中的for循环

    第一类:数字性循环 #!/bin/bash for((i=1;i<=10;i++)); do echo $(expr $i \* 3 + 1); done #!/bin/bash for i i ...