Golang 入门 : 创建第一个Go程序
创建第一个Go程序
新建一个 helloworld.go 文件,写入以下程序
package main
import (
"fmt"
)
// 一个函数声明
/*
一个main函数声明
*/
func main() {
fmt.Println("Hello, 世界")
}
运行程序
go run helloworld.go
输出
Hello, 世界
仅需几行代码就能创建一个Go程序
Go语言原生支持 Unicode,它可以处理全世界任何语言的文本。
如果你想要保存编译结果以备将来之用,可以用 build 子命令。
go build helloworld.go
这个命令会生成一个名为 helloworld 的可执行二进制文件,之后可以随时运行它,不需要任何处理。
$ ./helloworld
Hello, 世界
程序详解
package 创建包
Go语言以包作为管理单位,每一个源文件都必须先声明它的所属包,所以每个Go的源文件都会以一个 package 声明一个包名称。 package main 就是声明了一个 main 包。包类似其他语言里的库(libraries)或者模块(modules)。一个包由位于单个目录下的一个或多个 .go 源文件组成,目录定义包的作用。
Go的标准库提供了100多个包,以支持常见功能,如输入、输出、排序以及文本处理。比 如 fmt 包,就含有格式化输出、接收输入的函数。 Println 是其中一个基础函数,可以打印以空格间隔的一个或多个值,并在最后添加一个换行符,从而输出一整行。
main 包比较特殊。它定义了一个独立可执行的程序,而不是一个库。
import 导入包
在包声明之后使用 import 导入到需要的地方,import fmt 导入了一个Go语言内置提供的 fmt 包 。 如果需要导入多个包,就在括号内加入多个包的名称,每一行代表一个包。
必须恰当导入需要的包,缺少了必要的包或者导入了不需要的包,程序都无法编译通过。这项严格要求避免了程序开发过程中引入未使用的包。
main 函数
它是Go语言的入口,程序在启动时候第一个执行的函数。 main 函数只能声明在 main 包中。
一个函数的声明由 func 关键字、函数名、参数列表、返回值列表(这个例子里的 main 函数 参数列表和返回值都是空的)以及包含在大括号里的函数体组成。
Go语言不需要在语句或者声明的末尾添加分号,除非一行上有多条语句。实际上,编译器会 主动把特定符号后的换行符转换为分号, 因此换行符添加的位置会影响Go代码的正确解析。举个例子, 函数的左括号 { 必须和 func 函数声明在同一行上, 且位于末尾,不能独占 一行,而在表达式 x + y 中,可在 + 后换行,不能在 + 前换行。
Go语言在代码格式上采取了很强硬的态度。
注释
Go使用 // 来起始一个行注释,使用一个 /* 和 */ 对来包裹一个块注释。
Golang 入门 : 创建第一个Go程序的更多相关文章
- Windows Azure入门教学系列 (一): 创建第一个WebRole程序
原文 Windows Azure入门教学系列 (一): 创建第一个WebRole程序 在第一篇教学中,我们将学习如何在Visual Studio 2008 SP1中创建一个WebRole程序(C#语言 ...
- CodeBlocks环境搭建及创建第一个C++程序
某业界大牛推荐最佳的途径是从raytracing入门,所以本屌开始学习<Ray Tracing In One Weekend>. 该书是基于C++的.本屌从未学过C++.感觉告诉我,要先搭 ...
- 手动创建第一个OC程序
手动创建第一个OC程序 创建一个文件夹,文件夹内创建一个a.m的OC源文件,并编辑 之前说过,OC是完全兼容C语言的,那么我们先写个下面的程序尝试一下 #include<stdio.h> ...
- 纯小白创建第一个Node程序失败-容易忽略的一个细节
一直觉得自己基础还很差,所以自觉不敢去碰node.js,但又对其心怀好奇.恰巧最近有一点空闲时间,忍不住去试了一下水 这不,在创建第一个node程序时就吃了闭门羹,总是提示我没有定义,如下图, 这 ...
- “全栈2019”Java第四章:创建第一个Java程序
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
每次使用 Visual Studio 的模板创建一个 UWP 程序,我们会在项目中发现大量的项目文件.配置.应用启动流程代码和界面代码.然而这些文件在 UWP 程序中到底是如何工作起来的? 我从零开始 ...
- (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
每次使用 Visual Studio 的模板创建一个 UWP 程序,我们会在项目中发现大量的项目文件.配置.应用启动流程代码和界面代码.然而这些文件在 UWP 程序中到底是如何工作起来的? 我从零开始 ...
- Windows Azure中文博客 Windows Azure入门教学系列 (一): 创建第一个WebRole程序
http://blogs.msdn.com/b/azchina/ 本文转自:http://blogs.msdn.com/b/azchina/archive/2010/02/09/windows-azu ...
- golang基础之第一个go程序
编写 Hello World 创建文件 hello.go,不写入任何内容.按照如下的命令尝试进行编译 $ go run hello.go 将会打印出如下错误: package main: hello. ...
- Go入门:创建第一个Go工程
前言 我是一名iOS开发. 因为公司后台都用的Go. 因为对服务端不了解. 所以想自己学习学习. 环境 因为自己的电脑是mac.然后在阿里云买的是centOS的服务器. 所以下面搭建的环境都是在cen ...
随机推荐
- IM通讯协议专题学习(十):初识 Thrift 序列化协议
本文由字节跳动技术团队杨晨曦分享,本文有修订和改动. 1.引言 本文将带你一起初步认识Thrift的序列化协议,包括Binary协议.Compact协议(类似于Protobuf).JSON协议,希望能 ...
- 老生常谈——分布式限流:部分Sentinal源码解读
基础知识 HTTP CODE = 429 "请求过多" A. 限流的类型 服务端 客户端 限流的标的 IP 用户 ... 基本要求 准确限制过量的请求. 低延时.限流器不能拖慢HT ...
- Flutter的一些概念(二)
注:本文同步发布于微信公众号:stringwu的互联网杂谈 Flutter的一些概念(二) 1 flutter的核心渲染模块 当应用启动时flutter 会遍历所有的Widget 形成Widget 树 ...
- SpringBoot(二) - 核心配置文件 (+ 邮件发送 和 短信发送)
1.application.properties 和 application.yml 配置文件格式区别 1.1 文件格式 application.properties # 端口号 server.por ...
- Apollo架构设计
Apollo架构设计 Apollo有一点很好,就是它是由国内携程团队开发,而且文档写的很全,代码也完全开源.如果去了解它也可以直接去看它的官方文档. 一.配置中心概念 1.背景 在实际开发中都会与配置 ...
- SQL Server 内存占用高分析及解决办法(超详细)
SQL Server 内存占用高分析及解决办法(超详细) 一.问题 1.1.SQL Server内存占用高 ,内存不释放 1.2.SQL Server 内存使用策略 SQL Server对服务器内存的 ...
- unified-message(统一消息平台)开源项目介绍
unified-message(统一消息平台),为业务系统提供了标准的消息发送功能 支持发送短信.邮件.企业微信等消息,可以扩展支持其它的消息类型 可以通过手机号.邮件.企业微信用户名直接发送, 可以 ...
- 天翼云重磅升级边缘WAF能力,助力企业高效应对Web安全威胁!
"2022年,网络高危漏洞数量同比增长了13%:Q2遭受攻击的API数量月均超过了25万:物联网的普及大大降低了DDoS的攻击成本,大流量攻击指数显著提升:恶意Bot流量仍在持续增长,202 ...
- Kali 启动默认的服务
Kali 启动默认的服务 在Kali Linux中,您可以使用systemctl命令来管理服务,包括设置服务的自动启动. 设置Apache服务自动启动 设置 Apache 服务自动启动.执行以下命令: ...
- linux mint安装触控板手势fusuma
安装必要的包,终端输入: sudo apt-get install libinput-tools sudo apt-get install xdotool sudo gem install fusum ...