当前位置: 首页 > news >正文

Go编程规范

文章目录

  • 注释
  • 转义符
  • 定义变量
    • 方法一:指定变量类型,声明后若不赋值,使用默认值
    • 方法二:根据值自行判定变量类型(类型推导)
    • 方法三:省略var, 注意:=左侧的变量不应该是已经声明过的,否则会导致编译错误[`推荐`]
    • 全局变量和局部变量
    • fmt.Printf查看变量
  • 常量
    • iota
  • 定义函数
  • 多行书写
  • 参考


注释

// 单行注释/* 多行注释
第一行
第二行
*/

转义符

在这里插入图片描述

定义变量

由字母、数字、下划线组成,只能以字母或下划线开头。

声明变量的一般形式是使用var关键字:

var 变量名 变量类型

方法一:指定变量类型,声明后若不赋值,使用默认值

func main() {var i inti = 6fmt.Println("i=", i)
}

方法二:根据值自行判定变量类型(类型推导)

var j = 7
fmt.Println("j=", j)

方法三:省略var, 注意:=左侧的变量不应该是已经声明过的,否则会导致编译错误[推荐]

k := 8
fmt.Println("k=", k)

全局变量和局部变量

// 声明多个全局变量
var (num1  = 100num2  = 200name1 = "tom"
)func main() {//声明局部变量var (num3  int    = 300num4  int    = 400name2 string = "jack")//输出全局变量fmt.Println(num1, num2, name1)fmt.Println(num3, num4, name2)
}

fmt.Printf查看变量

func main() {var n = 10fmt.Printf("%T\n", n) //查看变量的数据类型fmt.Printf("%v\n", n) //查看变量的值fmt.Printf("%b\n", n) //二进制方式输出
}

常量

常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型
不能修改

func main() {const num1 = 200fmt.Printf("num1:%v", num1)num1 = 300fmt.Printf("num1:%v", num1)
}

在这里插入图片描述

iota

iota在const关键字出现时将被重置为0(const 内部的第一行之前),const 中每新增一行常量声明将使iota 计数一次(iota 可理解为const 语句块中的行索引)

func main() {const (a = iota  //iota为0,a=0b = "tom" //iota为1c = iota  //iota为2,a=2)fmt.Println(a, b, c)
}

定义函数

func main() {	// 大括号必须在上面,不能单独起一行fmt.Println("hello,word!")
}

多行书写

用逗号分行

func main() {fmt.Println("aaaaaaaaaaaaaa","bbbbbbbbbb","cccccccccc")
}

在这里插入图片描述

参考

视频:https://ke.qq.com/course/4298934/12948828185532598#term_id=104461528

http://www.lryc.cn/news/175445.html

相关文章:

  • premiere 新建 视频导入 视频拼接 视频截取 多余视频删除
  • 笔记01:第一行Python
  • 资产连接支持会话分屏,新增Passkey用户认证方式,支持查看在线用户信息,JumpServer堡垒机v3.7.0发布
  • uniapp项目实践总结(二十二)分包优化和游客模式
  • Unity中UI组件对Shader调色
  • PhpStorm 2023年下载、安装教程和好用插件,保姆级教程
  • 1960-2017年世界各国总和生育率数据
  • java.math.BigDecimal is not a supported Java type
  • Unity之Hololens开发如何实现UI交互
  • 二、ubuntu主机端tftp及nfs服务开发环境安装
  • Android 12修改usb tp触摸唤醒
  • #define定义标识符详解
  • 开发者必备!如何将闲置iPad Pro打造为编程工具,使用VS Code编写代码
  • 【Java 基础篇】Java 模块化详解
  • 【2023面试题大全,都是常问面试题】
  • Bun 1.0 正式发布,爆火的前端运行时,速度遥遥领先!
  • getchar函数设置为非阻塞
  • 【超算作业调度系统--LSF】
  • L1-011 A-B分数 20
  • PHPword解析内容支撑
  • 回归预测 | MATLAB实现RUN-XGBoost龙格库塔优化极限梯度提升树多输入回归预测
  • LLM-TAP随笔——语言模型训练数据【深度学习】【PyTorch】【LLM】
  • Linux- open() lseek()
  • Halcon Tuple相关算子(一)
  • 基于图像形态学处理的路面裂缝检测算法matlab仿真
  • PY32F003F18之窗口看门狗
  • SpingBoot:整合Mybatis-plus+Druid+mysql
  • 计算机视觉与深度学习-经典网络解析-VGG-[北邮鲁鹏]
  • 入门级制作电子期刊的网站推荐
  • 软件测试内容整理