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

编程笔记 Golang基础 008 基本语法规则

编程笔记 Golang基础 008 基本语法规则

Go语言的基本语法规则.

Go语言的基本语法规则包括但不限于以下要点:

  1. 标识符

    • 标识符用于命名变量、常量、类型、函数、包等。
    • 标识符由字母(a-z,A-Z)、数字(0-9)和下划线(_)组成。
    • 标识符不能以数字开头。
    • Go语言严格区分大小写,比如myVariableMyVariable是两个不同的标识符。
    • 标识符中不能包含空格或其他特殊字符。
    • 标识符不能使用Go语言的保留关键字作为名称。
  2. 变量声明

    • 使用var关键字可以显式声明变量,并可指定其数据类型。
    var name string
    
    • 简短声明(简写语法):在函数内部可以使用:=进行变量的声明和初始化,编译器会自动推导变量类型。
    name := "Tom"
    
  3. 基本数据类型

    • 整数类型:int, int8, int16, int32, int64, uint, uint8, uint16, uint32, uint64, uintptr
    • 浮点数类型:float32, float64
    • 布尔类型:bool
    • 字符串类型:string
    • 字符类型:rune (实际上是int32,代表一个Unicode码点)
    • 字节类型:byte (实际上是uint8)
  4. 控制结构

    • 条件语句:if, else, switch
    • 循环语句:for, while(通常通过for实现)
    • 跳转语句:break, continue, goto, return
  5. 函数

    • 函数定义需要指定返回类型,如果没有返回值,则为func function_name(参数列表) {}
    • main函数是程序执行的入口点,必须在名为main的包内定义,且无参数无返回值。
  6. 包(Packages)

    • 每个Go源文件属于一个包,通过package关键字指定包名。
    • import关键字用来导入其他包,如标准库或自定义包。
    • 包级别的变量和函数可通过大写字母开头的标识符被外部包访问。
  7. 注释

    • 单行注释:// 这是一个单行注释
    • 多行注释:/* 这是多行注释内容 */
  8. 作用域和可见性

    • 变量的作用域从声明处开始,直到所在块结束。
    • 全局变量可以在整个包内可见,如果首字母大写,也可以在其他包中被引用。
  9. 初始化函数

    • 每个包都可以有一个或多个名为init的函数,它们会在包加载时自动调用,按照依赖关系排序执行。

以上规则构成了Go语言基础语法的核心部分,但并非全部。实际编程中还会涉及接口、并发编程(goroutines和channels)、错误处理等诸多高级特性。

所涉及内容,在后面还要详细解析。

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

相关文章:

  • android input命令支持多指触摸成果展示-千里马framework实战开发
  • Stable Diffusion 模型分享:Indigo Furry mix(人类与野兽的混合)
  • OpenAI Sora引领AI跳舞视频新浪潮:字节跳动发布创新舞蹈视频生成框架
  • [深度学习] 卷积神经网络“卷“在哪里?
  • 企业网络安全自查:总结报告与改进指南
  • 怎么理解ping?这是我听过最好的回答
  • 用户请求到响应可能存在的五级缓存
  • 云图极速版限时免费活动
  • vue3 vuex
  • Java架构师之路三、网络通信:TCP/IP协议、HTTP协议、RESTful API、WebSocket、RPC等。
  • 【C++】笔试训练(九)
  • 模板注入 [BJDCTF2020]Cookie is so stable1
  • 2-18算法习题总结
  • 【软考高项】【英语知识】-- 单词积累
  • 外包干了3个月,技术退步明显
  • 【ArcGIS微课1000例】0105:三维模型转体模型(导入sketchup转多面体为例)
  • 创建型设计模式 - 原型设计模式 - JAVA
  • Squid代理:APT、PyPI和Docker的内网穿透解决方案
  • MYSQL--触发器
  • onnx 1.16 doc学习笔记四:python API-If和Scan
  • 如何构建企业专属GPT
  • 知识积累(二):损失函数正则化与权重衰减
  • 消息中间件-面试题
  • Python 将二维数组或矩阵变为三维
  • 区块链与Solidity详细介绍及基本语法使用
  • 题目 1253: 老王赛马
  • 【MATLAB源码-第144期】基于matlab的蝴蝶优化算法(BOA)无人机三维路径规划,输出做短路径图和适应度曲线。
  • 地下管线管网三维建模工具MagicPipe3D V3.4.2发布
  • 糖尿病性视网膜病变(DR)的自动化检测和分期
  • C 标准库 - <errno.h>