• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >Golang > Go语言hello world实例

Go语言hello world实例

作者:junjie 字体:[增加 减小] 来源:互联网

junjie 通过本文主要向大家介绍了go语言helloworld,go语言实例,go语言,go语言环境搭建,go语言程序设计等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

在开始编写应用之前,我们先从最基本的程序开始。就像你造房子之前不知道什么是地基一样,编写程序也不知道如何开始。因此,在本节中,我们要学习用最基本的语法让Go程序运行起来。

程序

这就像一个传统,在学习大部分语言之前,你先学会如何编写一个可以输出hello world的程序。

准备好了吗?Let's Go!

package main

import "fmt"

func main() {
    fmt.Printf("Hello, world or 你好,世界 or καλημ ́ρα κóσμ or こんにちはせかい\n")
}
</div>

输出如下:

Hello, world or 你好,世界 or καλημ ́ρα κóσμ or こんにちはせかい
</div>

详解

首先我们要了解一个概念,Go程序是通过package来组织的

package <pkgName>(在我们的例子中是package main)这一行告诉我们当前文件属于哪个包,而包名main则告诉我们它是一个可独立运行的包,它在编译后会产生可执行文件。除了main包之外,其它的包最后都会生成*.a文件(也就是包文件)并放置在$GOPATH/pkg/$GOOS_$GOARCH中(以Mac为例就是$GOPATH/pkg/darwin_amd64)。

每一个可独立运行的Go程序,必定包含一个package main,在这个main包中必定包含一个入口函数main,而这个函数既没有参数,也没有返回值。
</div>

为了打印Hello, world...,我们调用了一个函数Printf,这个函数来自于fmt包,所以我们在第三行中导入了系统级别的fmt包:import "fmt"。

包的概念和Python中的package类似,它们都有一些特别的好处:模块化(能够把你的程序分成多个模块)和可重用性(每个模块都能被其它应用程序反复使用)。我们在这里只是先了解一下包的概念,后面我们将会编写自己的包。

在第五行中,我们通过关键字func定义了一个main函数,函数体被放在{}(大括号)中,就像我们平时写C、C++或Java时一样。

大家可以看到main函数是没有任何的参数的,我们接下来就学习如何编写带参数的、返回0个或多个值的函数。

第六行,我们调用了fmt包里面定义的函数Printf。大家可以看到,这个函数是通过<pkgName>.<funcName>的方式调用的,这一点和Python十分相似。

前面提到过,包名和包所在的文件夹名可以是不同的,此处的<pkgName>即为通过package <pkgName>声明的包名,而非文件夹名。</div>

最后大家可以看到我们输出的内容里面包含了很多非ASCII码字符。实际上,Go是天生支持UTF-8的,任何字符都可以直接输出,你甚至可以用UTF-8中的任何字符作为标识符。

结论

Go使用package(和Python的模块类似)来组织代码。main.main()函数(这个函数主要位于主包)是每一个独立的可运行程序的入口点。Go使用UTF-8字符串和标识符(因为UTF-8的发明者也就是Go的发明者),所以它天生就具有多语言的支持。

</div>

您可能想查找下面的文章:

  • Go语言hello world实例
  • 创建第一个Go语言程序Hello,Go!

相关文章

  • Go语言对JSON进行编码和解码的方法
  • GO语言实现文件上传代码分享
  • 深入剖析Go语言编程中switch语句的使用
  • PHP与Go语言之间的通信详解
  • go语言实现一个简单的http客户端抓取远程url的方法
  • Go语言正则表达式示例
  • 使用Golang简单实现七牛图片处理API
  • go语言实现通过FTP库自动上传web日志
  • GO语言(golang)基础知识
  • mac下golang安装了windows编译环境后编译变慢

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • GO语言实现批量压缩图片和水印
    • Go语言声明一个多行字符串的变量
    • 深入解析Go语言中for循环的写法
    • go语言环境搭建简述
    • Go语言清除文件中空行的方法
    • Go语言中的Slice学习总结
    • Go语言常用字符串处理方法实例汇总
    • Go语言之自定义集合Set
    • Go语言如何并发超时处理详解
    • Go语言中的复合类型详细介绍

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有