初识GO语言

在这里插入图片描述

是由google公司推出的一门编程语言,12年推出的第一个版本

Go的特点

Go为什么能在最近的IT领域炙手可热

  • 集python简洁&C语言的性能于一身

  • 21世纪的C语言

  • 顺应容器化时代的到来

  • 区块链的崛起

学习一门编程语言可以划分为下面这三个步骤

  1. 安装 编译器 or 解释器
  2. 学习语法 & 编写代码
  3. 运行

编译器或者是解释器,在这其中所起到的作用就是翻译官

将你写的代码解释成计算机能够识别的语言,再经过计算机的解释呈现出来

在这里插入图片描述

windows系统搭建go开发环境

  1. 下载go的编译器

All releases - The Go Programming Language (google.cn) (官网地址)

在这里插入图片描述

按照提示一步一步安装即可

在这里插入图片描述

安装路径这里可以自定义,建议最好是放在根目录,C盘的根目录或者是D盘,容易查找 C:\go D:\go

在这里插入图片描述

如下图所示:
在这里插入图片描述

这些其实就是go的编译器 在这个安装目录中有一个特殊的路径

bin目录 在bin目录中有一个go,这个go其实就是我们启动go编译器的程序

在这里插入图片描述

我们可以直接进入到该目录,运行go编译器 如下图所示

在这里插入图片描述

GO环境变量PATH

这样启动比较麻烦

我们也可以选择将这个路径添加到系统的环境变量中,这样我们后面再运行的时候直接输入go即可,不需要再带上路径了

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这样一整套操作下来,就可以实现在cmd中直接输入go即可启动,无需再加完整路径

可以输入 go version 试试 查看当前安装的go的版本 到了这一步,安装的工作就已经结束了

C:\Users\YANG>go version
go version go1.22.0 windows/amd64

其他配置项目

  • 创建任意一个目录

以后的GO项目都要按照要求放在这个目录

我这边所创建的目录就是在D:\Go\golang

在这个目录下需要再去创建三个文件夹,如下图所示:

在这里插入图片描述

-bin

-pkg

-src 以后所有的项目都要放在这个目录

-crm

-app-go

就像上面表示的这样 按照这样创建


添加GO项目相关环境变量

在这里插入图片描述

这里的GOBIN就是我们前面一步自己所创建的目录地址

GOPATH就是装三个文件夹的那个文件夹路径

GOROOT就是在安装go的时候所在的路径

在这里插入图片描述


编写代码

package main
import "fmt"
func main() {
	fmt.Println("hello Go")
}

将代码保存至src目录下

这就是一个最简单的代码

现在我们来运行这串代码,看看什么效果


运行代码

本质上就是把go的代码交给go的编译器去执行。由它来展示效果

  • 方式一

先进入到存放源码的目标路径下

在这里插入图片描述

如上图所示,这就是go的代码运行方式

  • 方式二

也是先进入到存放源代码的目标路径下

在这里插入图片描述

在你执行了这个命令之后终端这边不会显示变化

在你的文件夹中 你可以看到 会多出来一个可执行文件

在这里插入图片描述

这个时候直接双击或者是在终端下执行hello.exe也会打印结果

在这里插入图片描述

go build的作用就是将你的代码编译成一个可执行的文件

也可也在构建的时候加上 -o xxx.exe 自定义名称

D:\Go\golang\src\czy>go build -o go.exe

D:\Go\golang\src\czy>go.exe
hello Go

上面两个方法,其实本质上作用是一样的

在go run这个命令执行的时候,它自己内部会先执行go build 然后生成的执行文件放在一个临时目录,然后它自己再去调用临时目录内的程序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/471540.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C语言种sizeof()和strlen的区别

sizeof 是 C 语言内置的操作符关键字,而 strlen 是 C 语言库函数; sizeof 仅用于计算数据类型的大小或者变量的大小,而 strlen 只能以结尾为 \0 的字符串作为参数; 编译器在编译时就计算出了 sizeof 的结果,而 strlen …

【内核内存管理、动态分配及IO访问、LED驱动】

一、内核内存管理框架 内核将物理内存等分成N块4KB,称之为一页,每页都用一个struct page来表示,采用伙伴关系算法维护 内核地址空间划分图: 3G~3G896M:低端内存,直接映射 虚拟地址 3G 物理地址 ​ 细…

YOLOv8独家改进:block改进 | RepViTBlock和C2f进行结合实现二次创新 | CVPR2024清华RepViT

💡💡💡本文独家改进:CVPR2024 清华提出RepViT:轻量级新主干!从ViT角度重新审视移动CNN,RepViTBlock和C2f进行结合实现二次创新 改进结构图如下: 收录 YOLOv8原创自研 https://blog.csdn.net/m0_63774211/category_12511737.html?spm=1001.2014.3001.5482 💡…

UML学习体会

1. 水在前面 本来写作的水平就很一般,平时写的也少。最近看到一些文章说学习最好的方式是输出,刚好又重温了一遍UML方面的基础,所以想记录点学习心得。而且说实话这玩意平时基本不怎么用(偶尔倒是看看别人的成果)&…

mabatis 下

mybatis 原生的API&注解的方式MyBatis-原生的API调用快速入门需求快速入门代码实现 MyBatis-注解的方式操作快速入门需求快速入门代码实现注意事项和说明 mybatis-config.xml配置文件详解说明properties属性settings全局参数定义typeAliases别名处理器typeHandlers类型处理…

麒麟 V10 一键安装 Oracle 11GR2(231017)单机版

Oracle 一键安装脚本,演示 麒麟 V10 一键安装 Oracle 11GR2 单机版过程(全程无需人工干预):(脚本包括 ORALCE PSU/OJVM 等补丁自动安装) ⭐️ 脚本下载地址:Shell脚本安装Oracle数据库 脚本第…

【C语言】结构体的内存对齐问题

1.结构体内存对齐 我们已经基本掌握了结构体的使用了。那我们现在必须得知道结构体在内存中是如何存储的?内存是如何分配的?所以我们得知道如何计算结构体的大小?这就引出了我们今天所要探讨的内容:结构体内存对齐。 1.1 对齐规…

深入浅出Go性能监控:使用expvar库的实战指南

深入浅出Go性能监控:使用expvar库的实战指南 引言expvar库概览主要组件介绍如何帮助开发者监控应用性能 实战开始:配置和初始化导入expvar库初始化expvar创建和注册自定义Var实例 监控关键数据使用expvar监控内存使用监控Goroutines数量自定义业务指标监…

软件测评中心:进行科技成果鉴定测试的注意事项和好处简析

软件产品科技成果鉴定是有效评价科技成果质量和水平的方法之一,也是鼓励科技成果通过市场竞争等方式得到有效的评价和认可,可以推动科技成果的进步和转化。 一、进行科技成果鉴定测试时的注意事项:   1、应由具备一定资质和能力的专业机构…

综合实验---Web---进阶版

目录 实验配置: 1.PHP调整主配置文件时,修改文件内容 1.原内容调整(在编译安装的情况下) 2.调整如下 3.没有调整的,根据之前配置就行 2.配置Nginx支持PHP解析 1.原内容如下 2.调整如下 3.验证PHP测试页 1.原内容如下 2.调整如下 4…

Ethsign银河活动开启,简单参与领6个NFT

简介:EthSign是一个基于区块链技术的去中心化电子签名平台,目的是解决传统中心化电子签名服务的各种问题。用户可以使用钱包或社交媒体帐户生成的私钥签署文件和协议,数字签名记录在链上,文件经过加密存储在去中心化存储网络中&am…

51-31 CVPR’24 | VastGaussian,3D高斯大型场景重建

2024 年 2 月,清华大学、华为和中科院联合发布的 VastGaussian 模型,实现了基于 3D Gaussian Splatting 进行大型场景高保真重建和实时渲染。 Abstract 现有基于NeRF大型场景重建方法,往往在视觉质量和渲染速度方面存在局限性。虽然最近 3D…

OSPF特殊区域(stub\nssa)

stub区域——只有1类、2类、3类;完全stub区域——只有1类、2类 NSSA区域:本区域将自己引入的外部路由发布给其他区域,但不需要接收其他区域的路由 在NSSA区域的路由器上,引入外部路由时,不会转换成5类LSA&#xff0c…

【保姆级教程】如何拥有GPT?(Proton邮箱版)

OnlyFans 订阅教程移步:【保姆级】2024年最新Onlyfans订阅教程 Midjourney 订阅教程移步: 【一看就会】五分钟完成MidJourney订阅 GPT-4.0 升级教程移步:五分钟开通GPT4.0 如果你需要使用Wildcard开通GPT4、Midjourney或是Onlyfans的话&am…

故障诊断 | 一文解决,RBF径向基神经网络的故障诊断(Matlab)

文章目录 效果一览文章概述专栏介绍模型描述源码设计参考资料效果一览 文章概述

【暑期实习记录】腾讯oc

部门:实习基地 - 无意向 - csig腾讯云捞 TimeLine 3.3 压线投递实习基地 3.6 一面 主要深问项目,包括设计、困难点、亮点、迭代过程、对比、测试和部署等,然后问了一些相关的八股,一道简单sql和简单算法 之后反问面试官他对应…

操作系统知识-操作系统作用+进程管理-嵌入式系统设计师备考笔记

0、前言 本专栏为个人备考软考嵌入式系统设计师的复习笔记,未经本人许可,请勿转载,如发现本笔记内容的错误还望各位不吝赐教(笔记内容可能有误怕产生错误引导)。 本章的主要内容见下图: 1、操作系统的作用…

【ACL 2023获奖论文】再现奖:Do CoNLL-2003 Named Entity Taggers Still Work Well in 2023?

【ACL 2023获奖论文】再现奖:Do CoNLL-2003 Named Entity Taggers Still Work Well in 2023? 写在最前面动机主要发现和观点总结 正文1引言6 相关工作解读 2 注释一个新的测试集以度量泛化CoNLL数据集的创建数据集统计注释质量与评估者间协议目标与意义 3 实验装置…

Keil笔记(缘更)

Keil 一、使用Keil时可能会出现的问题1.Project框不见了2.添加文件时找不到3.交换文件位置4.main.c测试报1 warning5.搜索CtrlF 二、STLINK点灯操作1.配置寄存器进行点灯2.使用库函数进行点灯 3.GPIO1.LED闪烁4.按键控制LED 注: 一、使用Keil时可能会出现的问题 1.…

SpringBoot中使用验证码easy-captcha

easy-captcha使用的大概逻辑: 当一个请求发送到后端服务器请求验证,服务器使用easy-captcha生成一个验证码图片,并通过session将验证信息保存在服务器,当用户登录校验时候,会从ession中取出对比是否一致 但是前后端分离之后 由于跨域问题 以上就无法实现了 下面这种情况没…