Go 语言基础:包、函数、语句和注释解析
一个 Go 文件包含以下几个部分:
- 包声明
- 导入包
- 函数
- 语句和表达式
看下面的代码,更好地理解它:
例子
package main
import "fmt"
func main() { fmt.Println("Hello World!") }
例子解释
第 1 行: 在 Go 中,每个程序都是一个包的一部分。我们使用 package
关键字来定义它。在这个例子中,程序属于 main
包。
第 2 行: import ("fmt")
让我们导入包中的文件,包名为 fmt
。
第 3 行: 一个空行。Go 忽略空格。在代码中有空格会使它更易读。
第 4 行: func main() {}
是一个函数。任何在花括号 {}
内的代码都将被执行。
第 5 行: fmt.Println()
是从 fmt
包中提供的函数。它用于输出/打印文本。在我们的例子中,它将输出 "Hello World!"。
注意: 在 Go 中,任何可执行代码都属于 main
包。
Go 语句
fmt.Println("Hello World!")
是一个语句。
在 Go 中,语句是通过换行(按下回车键)或分号 ";"
分隔的。
按下回车键会在行末自动添加 ";"
(不会显示在源代码中)。
左花括号 {
不能出现在行首。
注释
注释是在执行时被忽略的文本。
注释可用于解释代码,使其更易读。
注释还可用于在测试替代代码时防止代码执行。
Go支持单行或多行注释。
Go单行注释
单行注释以两个正斜杠(//
)开头。
在//
和行尾之间的任何文本都将被编译器忽略(不会被执行)。
示例
// This is a comment
package main
import ("fmt")
func main() {
// This is a comment
fmt.Println("Hello World!")
}
以下示例在代码行末使用单行注释:
示例
package main
import ("fmt")
func main() {
fmt.Println("Hello World!") // This is a comment
}
Go多行注释
多行注释以/*
开头,以*/
结尾。
在/*
和*/
之间的任何文本都将被编译器忽略:
示例
package main
import ("fmt")
func main() {
/* The code below will print Hello World
to the screen, and it is amazing */
fmt.Println("Hello World!")
}
提示: 使用哪种注释取决于您。通常,我们使用//
进行短注释,使用/* */
进行长注释。
用注释防止代码执行
您还可以使用注释防止代码被执行。
注释的代码可以保存以供以后参考和故障排除。
示例
package main
import ("fmt")
func main() {
fmt.Println("Hello World!")
// fmt.Println("This line does not execute")
}
最后
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding
,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注
Go 语言基础:包、函数、语句和注释解析的更多相关文章
- Java之--Java语言基础组成—函数
Java语言基础组成-函数 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的函数,函数 ...
- Go语言基础之函数
Go语言基础之函数 函数是组织好的.可重复使用的.用于执行指定任务的代码块.本文介绍了Go语言中函数的相关内容. 函数 Go语言中支持函数.匿名函数和闭包,并且函数在Go语言中属于“一等公民”. 函数 ...
- GO学习-(12) Go语言基础之函数
Go语言基础之函数 函数是组织好的.可重复使用的.用于执行指定任务的代码块.本文介绍了Go语言中函数的相关内容. 函数 Go语言中支持函数.匿名函数和闭包,并且函数在Go语言中属于"一等公民 ...
- [06 Go语言基础-包]
[06 Go语言基础-包] 包 什么是包,为什么使用包? 到目前为止,我们看到的 Go 程序都只有一个文件,文件里包含一个 main 函数和几个其他的函数.在实际中,这种把所有源代码编写在一个文件的方 ...
- 第二十一节:Java语言基础-关键字,标识符,注释,常量和变量,运算符
Java语言基础-关键字,标识符,注解,常量和变量,运算符 class Demo { public static void main(String[] args){ System.out.printl ...
- Go语言基础包之net/http
Go语言基础包之net/http Go语言内置的net/http包十分的优秀,提供了HTTP客户端和服务端的实现. net/http介绍 Go语言内置的net/http包提供了HTTP客户端和服务端的 ...
- Java 语言基础之函数
函数的定义: 函数就是定义在类中的具有特定功能的一段独立小程序 函数也称为方法 函数定义格式: 修饰符 返回值类型 函数名(参数类型 形式参数1, 参数类型 形式参数2,...) { 执行语句; re ...
- DirectX基础 常用函数语句
DirectX常用函数语句 常用数学类函数: 计算向量的长度(模): FLOAT D3DXVec3Length(CONST D3DXVECTOR3* pV); 向量的规范化: D3DXVECTOR3 ...
- Go 语言官方包函数中文翻译
Go官方包函数中文翻译 *** import "strings" func Join(a []string, sep string) string Join concatenate ...
- iOS开发环境C语言基础 数组 函数
1 求数组元素的最大值 1.1 问题 创建程序,实现查询数组中最大值的功能,需求为:创建一个长度为10的数组,数组内放置10个0~99之间(包含0,包含99)的随机数作为数组内容,要求查询出数组中的最 ...
随机推荐
- STL-unordered_hashtable模拟实现
#pragma once #include<vector> #include<string> #include<iostream> using std::cout; ...
- 50条MAUI踩坑记
1. 目录结构: (1)_imports.razor是一个全局using namespace的地方 (2)Platforms下的代码,虽然都放在同一个项目下,但是Platforms\Android下的 ...
- Java toString的使用
1 package com.bytezreo.objectclass; 2 3 import java.util.Date; 4 5 /** 6 * 7 * @Description Object类中 ...
- C++ //list容器 构造函数 //list赋值和交换 //list容器大小操作 //list插入和删除,移除 //清空 //list数据存取back(); front() //list 反转和排序
1 //list容器 构造函数 //list赋值和交换 //list容器大小操作 2 //list插入和删除,移除 //清空 //list数据存取back(); front() 3 //list 反转 ...
- 设计原则 --- SOLID
引言 SOLID是五个常见的面向对象设计原则的缩写,其目的是帮助开发者设计易于维护和扩展的软件系统 其中包含单一职责原则(SRP),开闭原则(OCP),里氏替换原则(LSP),接口隔离原则(ISP), ...
- 手把手带你认识GaussDB轻量化运维管理工具
本文分享自华为云社区<GaussDB轻量化运维管理工具介绍>,作者: Gauss松鼠会小助手. 一.GaussDB 运维管理平台简介 开放生态层 友好Web界面,多云皮肤个性化定制 丰富的 ...
- 《Relation of the Relations A New Paradigm of the Relation Extraction Problem》论文阅读笔记
原文 代码 摘要 为了解决传统的关系抽取(RE)方法只能识别两个实体之间的关系,而忽略了同一上下文中多个关系之间的相互依赖性,即关系的关系(relation of relations,RoR)的问题, ...
- H3C-IP路由器
定义 路由器负责将数据报文在IP网段之间进行转发 路由器负责将数据报文在IP网段之间进行转发 路由是指导路由器如何进行数据转发的路径信息 作用 路由器负责将数据报文在逻辑网段间进行转发 路由器是指导路 ...
- 【风控算法】二、SQL->Python->PySpark计算KS,AUC及PSI
KS,AUC 和 PSI 是风控算法中最常计算的几个指标,本文记录了多种工具计算这些指标的方法. 生成本文的测试数据: import pandas as pd import numpy as np i ...
- Python 动态网页Fetch/XHR爬虫——以获取NBA球员信息为例
Python 动态网页Fetch/XHR爬虫--以获取NBA球员信息为例 动态网页抓取信息,一般利用F12开发者工具-网络-Fetch/XHR获取信息,实现难点有: 动态网页的加载方式 获取请求Url ...