跳到主要内容

在线 Go 编译器 - Go 在线运行 — Numio

在浏览器中在线运行 Go 代码,支持 fmt、strings、sort 等标准包和标准输入,即时查看结果。免费、无需注册,代码不上传。

在浏览器内运行 · 无需注册

代码 (Go)

按 Ctrl/⌘ + Enter 运行

input() 和 io.read() 会按顺序逐行读取这里的内容。

输出

代码在你的浏览器本地运行,不会上传。

使用方法

  1. 在编辑器中编写或粘贴包含 package main 和 func main 的 Go 程序。
  2. 如果用到 fmt.Scan 或 bufio,可在输入框中逐行填写输入内容。
  3. 点击“运行”(或按 Ctrl/⌘ + Enter)查看输出。

示例

// Go 示例
package main

import "fmt"

func main() {
	for _, name := range []string{"Ada", "Alan"} {
		fmt.Printf("你好,%s!\n", name)
	}

	sum := 0
	for i := 1; i <= 100; i++ {
		sum += i
	}
	fmt.Println("1 到 100 的和:", sum)
}

功能与限制

基于 Yaegi(编译为 WebAssembly 的 Go 解释器)运行。首次运行需下载数 MB 的运行环境,之后会被缓存。

每次运行超过 10 秒会自动停止。只能使用标准库,无法导入第三方模块。

FAQ

这是官方的 Go 编译器吗?

不是。这里使用的是 Go 解释器 Yaegi。大多数程序的结果相同,但 cgo、部分反射或泛型的边界情况以及 goroutine 的执行时序等少数高级特性可能有所不同。

如何读取输入?

在输入框中填写输入内容,fmt.Scan 或读取 os.Stdin 的 bufio.Scanner 会按顺序读取。

代码会上传到服务器吗?

不会。代码完全在浏览器中运行,只有首次使用时会从公共 CDN(jsDelivr)下载 Go 运行环境。

格式参考资料

工具页面更新日期: