Go 开发常见问题和解决方法 | 学习笔记

简介: 快速学习 Go 开发常见问题和解决方法

开发者学堂课程【Go 语言核心编程 - 基础语法、数组、切片、Map: Go 开发常见问题和解决方法】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/625/detail/9502


Go 开发常见问题和解决方法

内容介绍

一、找不到文件

二、语法错误

三、小结和提示

 

一、找不到文件

系统找不到指定的文件,提示系统找不到可开发文件,或者当执行一个可执行文件时显示不是内部或外部的命令,

原因大多是源文件名不存在或者写错,或者当前路径错误

1.具体举例

1) 假设此时我们要运行的是 exec01,

正确命令为:

go run exec01.go,但此时误写为 go run exec.go,就会提示系统找不到指定的文件这一经典错误。

图片3.png

2) 或是因为我们执行 dos 语句: go bulid exec01.go 编译后,之后找到 exec01文件再执行(如图)。

图片4.png

但在输入时误写为 exec.go, 也会提示报错-不是内部或外部的命令

此时,只需要纠正文件名和路径即可。

2. 解决方法:

源文件名不存在或者写错,或者当前路径错误

 

二、语法错误

1. 具体举例:

(1) l 和 1

代码 println 中的常容易犯错,1 和 l 要多注意

fmt.Println(“姓名\t年龄\t籍贯\t地址\njohn\t2e\t河北\t北京")

fmt.Print1n() //错误,println 中的l写成了数字 1

(2) 善用编译器提示

package main

import "fmt" //fmt包中提供格式化,输出,输入的函数

func main() {

fmt.Print1h(“姓名\t年龄\t籍贯\t地址\njohn\t2e\t河北\t北京") //错误 println 其中l写成数字1

}

当误把 l 写成数字 1 语法错误时,保存后运行编译器会提示处:在 go 的第六行有一个 undefined (未定义),但编译器无法指出具体错误该如何更正,所以同学们要尝试着去看懂错误信息,其中红框中数字 6 ,表示错误处所在行数,之后字母表示错误原因。

图片5.png

 

三、小结和提示

学习编程最容易犯的错是语法错误。Go 要求你必须按照语法规则编写代码。

如果你的程序违反了语法规则,例如。忘记了大括号、引号,或者拼错了单词.

要求:

Go 编译器都会报语法错误,尝试着去懂编译器会报告的错误信息。

相关文章
|
2月前
|
算法 Java Go
【GoGin】(1)上手Go Gin 基于Go语言开发的Web框架,本文介绍了各种路由的配置信息;包含各场景下请求参数的基本传入接收
gin 框架中采用的路优酷是基于httprouter做的是一个高性能的 HTTP 请求路由器,适用于 Go 语言。它的设计目标是提供高效的路由匹配和低内存占用,特别适合需要高性能和简单路由的应用场景。
275 4
|
4月前
|
数据采集 数据挖掘 测试技术
Go与Python爬虫实战对比:从开发效率到性能瓶颈的深度解析
本文对比了Python与Go在爬虫开发中的特点。Python凭借Scrapy等框架在开发效率和易用性上占优,适合快速开发与中小型项目;而Go凭借高并发和高性能优势,适用于大规模、长期运行的爬虫服务。文章通过代码示例和性能测试,分析了两者在并发能力、错误处理、部署维护等方面的差异,并探讨了未来融合发展的趋势。
377 0
|
2月前
|
JavaScript 前端开发 Java
【GoWails】Go做桌面应用开发?本篇文章带你上手Wails框架!一步步带你玩明白前后端双端的数据绑定!
wails是一个可以让你使用Go和Web技术编写桌面应用的项目 可以将它看作Go的快并且轻量级的Electron替代品。可以使用Go的功能,并结合现代化UI完成桌面应用程序的开发
563 4
|
6月前
|
JSON 中间件 Go
Go 网络编程:HTTP服务与客户端开发
Go 语言的 `net/http` 包功能强大,可快速构建高并发 HTTP 服务。本文从创建简单 HTTP 服务入手,逐步讲解请求与响应对象、URL 参数处理、自定义路由、JSON 接口、静态文件服务、中间件编写及 HTTPS 配置等内容。通过示例代码展示如何使用 `http.HandleFunc`、`http.ServeMux`、`http.Client` 等工具实现常见功能,帮助开发者掌握构建高效 Web 应用的核心技能。
380 61
|
6月前
|
开发框架 安全 前端开发
Go Web开发框架实践:模板渲染与静态资源服务
Gin 是一个功能强大的 Go Web 框架,不仅适用于构建 API 服务,还支持 HTML 模板渲染和静态资源托管。它可以帮助开发者快速搭建中小型网站,并提供灵活的模板语法、自定义函数、静态文件映射等功能,同时兼容 Go 的 html/template 引擎,具备高效且安全的页面渲染能力。
|
7月前
|
人工智能 缓存 安全
Go开发遇见的一次Data Race
本文通过一段 Go 语言代码示例,分析了并发编程中的数据竞争(Data Race)问题。代码实现了一个带缓存的内存存储系统,包含 `LRUCache` 和 `MemoryCache` 两个核心组件。尽管在 `MemoryCache` 的 `Set` 方法中加了锁保护,但由于直接调用 `LRUCache` 的 `GetLength` 方法时未加锁,导致底层数据结构在多 goroutine 环境下被同时读写,从而触发 Data Race。文章详细解析了问题根源,并提出了解决方案:为 `LRUCache` 的 `Add` 方法添加锁保护,确保并发安全。
|
8月前
|
Go API 定位技术
MCP 实战:用 Go 语言开发一个查询 IP 信息的 MCP 服务器
随着 MCP 的快速普及和广泛应用,MCP 服务器也层出不穷。大多数开发者使用的 MCP 服务器开发库是官方提供的 typescript-sdk,而作为 Go 开发者,我们也可以借助优秀的第三方库去开发 MCP 服务器,例如 ThinkInAIXYZ/go-mcp。 本文将详细介绍如何在 Go 语言中使用 go-mcp 库来开发一个查询 IP 信息的 MCP 服务器。
499 0
|
缓存 弹性计算 API
用 Go 快速开发一个 RESTful API 服务
用 Go 快速开发一个 RESTful API 服务
|
开发框架 Go 计算机视觉
纯Go语言开发人脸检测、瞳孔/眼睛定位与面部特征检测插件-助力GoFly快速开发框架
开发纯go插件的原因是因为目前 Go 生态系统中几乎所有现有的人脸检测解决方案都是纯粹绑定到一些 C/C++ 库,如 OpenCV 或 dlib,但通过 cgo 调用 C 程序会引入巨大的延迟,并在性能方面产生显著的权衡。此外,在许多情况下,在各种平台上安装 OpenCV 是很麻烦的。使用纯Go开发的插件不仅在开发时方便,在项目部署和项目维护也能省很多时间精力。
327 5
|
Go 数据安全/隐私保护 开发者
Go语言开发
【10月更文挑战第26天】Go语言开发
175 3

热门文章

最新文章