Golang-01基础编程_开发环境准备

Golang——从入门到放弃 Go是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易Go是从2007年末由RobertGriesemer,RobPike,KenThompson主持开发,后来还加入了IanLanceTaylor,RussCox等人,并最终于2009年11月开源,在2012年早些时候发布了Go1稳定版本。现在Go的开发已经是完全开放的,并且拥有一个活跃的社区。中文网在线标准库文档。... 阅读详情

Golang基础编程:开发环境准备

学习目标

  • 了解Go语言的特点和应用领域
  • 掌握Go开发环境的搭建方法
  • 学会使用Go命令行工具和开发环境
  • 理解Go语言的项目结构和工作空间

1. Go语言简介

1.1 Go语言的特点

Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型编程语言,具有以下特点:

  • 简洁高效:语法简洁,学习曲线平缓,开发效率高
  • 并发支持:原生支持goroutine和channel,并发编程简单高效
  • 快速编译:编译速度极快,适合大型项目开发
  • 内存安全:自动垃圾回收,避免内存泄漏
  • 静态类型:编译时类型检查,提高代码质量
  • 跨平台:支持Windows、Linux、macOS等主流操作系统
  • 丰富的标准库:网络、加密、编码等功能一应俱全

1.2 Go语言的应用领域

  • 云计算和微服务:Kubernetes、Docker等核心组件
  • 网络编程:Web服务器、API网关、代理服务器
  • 分布式系统:etcd、Consul等分布式存储
  • 区块链:Hyperledger Fabric、以太坊客户端
  • DevOps工具:Prometheus、Grafana、Terraform
  • 命令行工具:kubectl、helm等云原生工具

2. Go环境安装

2.1 下载Go

访问Go官网 https://golang.org/dl/ 下载最新版本的Go安装包。

2.2 Windows系统安装

  1. 运行下载的MSI安装程序
  2. 选择安装路径(默认:C:\Go)
  3. 安装程序会自动配置环境变量
  4. 验证安装是否成功

2.3 macOS系统安装

使用Homebrew安装(推荐):

brew install go

或者从官网下载PKG安装包进行安装

2.4 Linux系统安装

Ubuntu/Debian:

sudo apt-get update
sudo apt-get install golang-go

CentOS/RHEL:

sudo yum install golang

或者下载二进制包手动安装:

# 下载Go二进制包
wget https://golang.org/dl/go1.21.0.linux-amd64.tar.gz

# 解压到/usr/local
sudo tar -C /usr/local -xzf go1.21.0.linux-amd64.tar.gz

# 配置环境变量
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc

3. 环境配置

3.1 验证安装

# 检查Go版本
go version

# 输出示例:go version go1.21.0 darwin/amd64

3.2 配置GOPATH(Go 1.11+可选)

从Go 1.11开始,推荐使用Go Modules,GOPATH不再是必需的。但了解其概念仍然重要:

# 设置GOPATH(可选)
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin

# 添加到shell配置文件(~/.bashrc 或 ~/.zshrc)
echo 'export GOPATH=$HOME/go' >> ~/.bashrc
echo 'export PATH=$PATH:$GOPATH/bin' >> ~/.bashrc
source ~/.bashrc

3.3 配置Go Modules

Go Modules是Go 1.11+推荐的依赖管理方式:

# 启用Go Modules(Go 1.13+默认启用)
export GO111MODULE=on

# 配置代理(国内用户推荐)
export GOPROXY=https://goproxy.cn,direct
export GOSUMDB=sum.golang.google.cn

# 添加到shell配置文件
echo 'export GO111MODULE=on' >> ~/.bashrc
echo 'export GOPROXY=https://goproxy.cn,direct' >> ~/.bashrc
echo 'export GOSUMDB=sum.golang.google.cn' >> ~/.bashrc
source ~/.bashrc

4. Go项目结构

4.1 传统GOPATH结构

$GOPATH/
├── bin/          # 编译后的可执行文件
├── pkg/          # 编译后的包文件
└── src/          # 源代码
    └── github.com/
        └── username/
            └── project/

4.2 Go Modules项目结构(推荐)

myproject/
├── go.mod        # 模块定义文件
├── go.sum        # 依赖校验文件
├── main.go       # 主程序文件
├── cmd/          # 命令行应用
│   └── myapp/
│       └── main.go
├── pkg/          # 可重用的包
│   └── utils/
│       └── utils.go
├── internal/     # 私有应用代码
│   └── service/
│       └── service.go
├── api/          # API定义文件
├── configs/      # 配置文件
├── scripts/      # 脚本文件
├── test/         # 测试文件
└── docs/         # 文档

5. 开发工具

5.1 VS Code(推荐)

  1. 下载并安装VS Code
  2. 安装Go扩展(由Go团队官方维护)
  3. 配置Go环境:
    // settings.json
    {
      "go.useLanguageServer": true,
      "go.formatTool": "goimports",
      "go.lintTool": "golangci-lint",
      "go.testFlags": ["-v"],
      "go.coverOnSave": true
    }
    

5.2 GoLand

JetBrains出品的专业Go IDE,功能强大但付费。

5.3 Vim/Neovim + Go插件

适合喜欢命令行开发的开发者:

" 使用vim-plug安装Go插件
Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' }

5.4 其他编辑器

  • Sublime Text + GoSublime
  • Atom + go-plus
  • Emacs + go-mode

6. Go命令行工具

6.1 基本命令

# 查看Go环境信息
go env

# 运行Go程序
go run main.go

# 编译Go程序
go build -o myapp main.go

# 安装程序到GOPATH/bin
go install

# 格式化代码
go fmt ./...

#  vet工具检查代码
go vet ./...

# 运行测试
go test ./...

# 查看文档
go doc fmt.Println

6.2 模块管理命令

# 初始化新模块
go mod init github.com/username/project

# 下载依赖
go mod download

# 整理依赖
go mod tidy

# 查看依赖图
go mod graph

# 验证依赖
go mod verify

# 编辑依赖
go mod edit -require=github.com/gin-gonic/gin@latest

6.3 高级命令

# 生成代码
go generate ./...

# 查看汇编输出
go build -gcflags="-S" main.go

# 性能分析
go test -cpuprofile=cpu.prof -memprofile=mem.prof
go tool pprof cpu.prof

# 竞态检测
go run -race main.go

# 编译优化
go build -ldflags="-s -w" main.go  # 减小二进制大小

7. 第一个Go程序

7.1 创建项目目录

mkdir hello-go
cd hello-go
go mod init hello-go

7.2 创建main.go文件

package main

import "fmt"

func main() {
    fmt.Println("Hello, Go!")
    
    // 变量声明
    var name string = "Gopher"
    age := 10  // 简短声明
    
    fmt.Printf("I am %s, %d years old.\n", name, age)
    
    // 基本运算
    a, b := 10, 20
    sum := a + b
    fmt.Printf("%d + %d = %d\n", a, b, sum)
}

7.3 运行程序

# 直接运行
go run main.go

# 编译后运行
go build -o hello main.go
./hello

8. Go语言基础语法

8.1 包声明和导入

package main  // 包声明

import (
    "fmt"      // 格式化I/O
    "os"       // 操作系统功能
    "time"     // 时间处理
)

8.2 函数定义

// 基本函数
func add(a, b int) int {
    return a + b
}

// 多返回值
func divide(a, b float64) (float64, error) {
    if b == 0 {
        return 0, fmt.Errorf("division by zero")
    }
    return a / b, nil
}

// 命名返回值
func split(sum int) (x, y int) {
    x = sum * 4 / 9
    y = sum - x
    return  // 直接return,返回命名的返回值
}

8.3 变量声明

// var声明
var name string = "Go"
var age int = 15

// 简短声明(只能在函数内部使用)
language := "Golang"
version := 1.21

// 多变量声明
var (
    author  = "Google"
    year    = 2009
    license = "BSD"
)

8.4 基本数据类型

// 布尔型
var isActive bool = true

// 数字类型
var i int = 42
var f float64 = 3.14
var c complex64 = 3 + 4i

// 字符串
var s string = "Hello, World!"

// 零值
var zeroInt int        // 0
var zeroString string  // ""
var zeroBool bool      // false

9. 常用开发工具配置

9.1 Git配置

# 配置Git用户信息
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"

# 配置Git忽略文件
echo "*.exe" >> ~/.gitignore_global
echo "*.test" >> ~/.gitignore_global
git config --global core.excludesfile ~/.gitignore_global

9.2 Makefile示例

# Makefile
BINARY_NAME=hello-go
BUILD_DIR=build

build:
	go build -o $(BUILD_DIR)/$(BINARY_NAME) main.go

run:
	go run main.go

test:
	go test -v ./...

clean:
	go clean
	rm -rf $(BUILD_DIR)

deps:
	go mod download
	go mod tidy

.PHONY: build run test clean deps

9.3 Docker配置

# Dockerfile
FROM golang:1.21-alpine AS builder

WORKDIR /app
COPY go.mod go.sum ./
RUN go mod download

COPY . .
RUN go build -o main .

FROM alpine:latest
RUN apk --no-cache add ca-certificates
WORKDIR /root/

COPY --from=builder /app/main .
CMD ["./main"]

10. 学习资源推荐

10.1 官方资源

  • Go官方文档:https://golang.org/doc/
  • Go语言规范:https://golang.org/ref/spec
  • Go标准库文档:https://pkg.go.dev/std
  • Go博客:https://blog.golang.org/

10.2 在线教程

  • Tour of Go:https://tour.golang.org/
  • Go by Example:https://gobyexample.com/
  • Effective Go:https://golang.org/doc/effective_go.html

10.3 开源项目

  • Awesome Go:https://awesome-go.com/
  • Go项目示例:https://github.com/golang/example
  • Go标准库源码:https://github.com/golang/go/tree/master/src

10.4 社区资源

  • Go中国社区:https://gocn.vip/
  • Go Forum:https://forum.golangbridge.org/
  • Reddit r/golang:https://www.reddit.com/r/golang/

11. 常见问题和解决方案

11.1 代理配置问题

# 国内用户配置代理
export GOPROXY=https://goproxy.cn,direct
export GOSUMDB=sum.golang.google.cn

11.2 权限问题

# Linux/macOS权限问题
sudo chown -R $USER:$USER $GOPATH

11.3 版本冲突

# 清理模块缓存
go clean -modcache

# 重新下载依赖
go mod download

总结

本章介绍了Go开发环境的搭建方法,包括:

  • Go语言的安装和配置
  • 开发工具的选择和使用
  • Go命令行工具的使用
  • 项目结构的组织方式
  • 第一个Go程序的编写和运行
  • 基础语法和开发工具配置

掌握了这些基础知识后,你就可以开始Go编程之旅了。在下一章中,我们将学习Go语言的基本数据类型和复合数据类型。

Golang基础教程 第一章:走进Golang Golang引入 简介: Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种计算机编程语言语言。 设计初衷: Go语言是谷歌推出的一种的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发Go,是因为过去10多年间软件开发的难度令人沮丧。派克表示,和今天的C++或C一样,Go是一种系统语言。他解释道,"使用它可以进行 阅读详情

相关推荐

一篇文章带你入门Golang

条件判断语句条件分支语句循环语句与其它编程语言不同的是,Go 语言中的循环语句只支持 for 关键字,而不支持 while 和 do-while 结构。关键字 for 的基本使用方法与其他语言类似,只是循环条件不含括号循环控制语句goto 可以打破原有代码执行顺序,直接跳转到某一行执行代码。math包提供了基本的数学常数和数学函数,使用时需要import "math"类型名:标识结构体的名称,在同一个包内不能重复。结构体中属性,也叫字段,必须唯一。同类型的成员属性可以写在一行。

无区新手的博客 6372

Golang基础语法

golang又称go language简称golang, go语言是谷歌推出的一中编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗勃派克说:‘’我们之所以开发go,是因为过去十年间软件开发的难度令人沮丧‘’。派克表示,和今天C和C++一样,go是一种系统语言。使用它可以快速开发,同时它还是一个真正的编译语言,我们之所以将它开源,原因是我们认为它已经非常有用和强大。1)计算机硬件更新频繁,性能提高很快。

qq_45553775的博客 1万+

【手写数据库toadb】01 开发数据库内核准备阶段-开发环境准备

工欲善其事,必先利其器。手写toadb数据库内核项目,提供保姆级的教程,能够让初学者顺利着手开始,开发出一款自己的数据库内核,在自己的简历上多一份重量级的项目履历。既然是保姆级与入门级教程,一定要从项目开始说起,而不是代码开始,本阶段的内容主要包括开发环境,git使用,开发工具以及调试等准备内容,熟悉的朋友可以直接跳过。在开始toadb数据库内核开发之前,我们需要先准备一下开发环境,这是每个开发项目开始之前的必经之路。toadb项目的开发环境是什么呢?

一个追逐梦想的码农 1万+

【Golang入门】简介与基本语法学习

Golang(又称Go)是一种由谷歌公司开发的编程语言。它是一种静态类型、编译型、并发型语言,被设计用于构建高效、可扩展和可维护的软件系统。Golang拥有简单的语法、快速的编译速度和良好的性能,因此被越来越多的开发者所喜爱和采用。

欢迎来到 程序猿 的博客 7311

避坑指南:在Ubuntu 22.04上配置UR5e与ROS2 Humble真机通信的完整流程

本文详细介绍了在Ubuntu 22.04上配置UR5e机械臂与ROS2 Humble真机通信的完整流程,包括环境准备、网络配置、URCap安装、ROS2驱动部署及控制器状态验证等关键步骤。特别针对常见问题如网络连接失败、驱动启动错误等提供了实用解决方案,帮助工程师高效完成UR5e与ROS2的集成工作。

weixin_30790841的博客 463

Cadence Allegro 17.2 PCB设计避坑指南:从焊盘制作到封装绘制的完整流程

本文详细解析了Cadence Allegro 17.2在PCB设计中的关键操作技巧,从焊盘制作到封装绘制的完整流程。通过0402电阻和2.54mm排针的实例,揭示新手常见错误及解决方案,包括焊盘参数设置、层类型区分和坐标输入规范,帮助工程师避免设计返工和生产事故。

weixin_28683391的博客 408

Golang介绍

GO

weixin_44190790的博客 2万+

【汽车故障诊断2】从标准到实战:解码DTC格式背后的诊断逻辑

本文深入解析汽车诊断故障码(DTC)的格式与逻辑,对比了OBD-II标准(如ISO 15031-6)的5字符格式与UDS协议(ISO 14229-1)下更丰富的3字节格式。文章从国际标准出发,结合实战案例,阐述了DTC如何作为汽车电子系统的“体检报告”,帮助工程师和维修技师精准定位故障,并详细解读了UDS 19服务如何读取和管理DTC状态。

berry的博客 711

01 | Go 项目开发环境准备

介绍如何快速准备一个 Go 项目开发环境

分享 Go、云原生、AI Infra 相关技术 795

一文看懂分布式存储架构

目录一、集中存储结构二、分布式存储1 、分布式存储的兴起2 、分布式存储的重要性3 、分布式存储的种类和比较三、分布式理论浅析1 、一致性和可用性2 、数据分布3 、复制4 、分布式协议5、跨机房部署四、分布式文件系统1、 Google 文件系统( GFS )2、 Taobao 文件系统( TFS )3、 Fackbook Haystack 文件系统4、 CDN 内容分发网络五、分布式键值系统1、 Amazon Dynamo2、 Taobao Tiar3、 ETCD4 、产品选型比较( Etcd , Zoo

weixin_70730532的博客 2万+

Unity Scriptable Build Pipeline (SBP) 详解

Unity 的可编程构建管线(Scriptable Build Pipeline, SBP)标志着引擎构建架构的一次关键转变,它从不透明的 C++ 实现转向了灵活、可扩展的 C# 框架。SBP 旨在满足现代游戏开发日益增长的需求,通过改进增量处理和高效缓存机制显著提升了构建性能。它赋予开发者对内容构建过程前所未有的控制力,从而能够针对特定项目需求进行深度定制。尽管 SBP 是 Unity 推荐的 Addressables 系统的重要基础层,但理解其核心组件、构建流程和高级功能对于优化大型项目、简化 CI/C

m0_57771536的博客 2208

Go Web 编程快速入门 01 - 环境准备与第一个 Web 应用

Go Web 编程快速入门 01 - 环境准备与第一个 Web 应用

Yeats_Liao的博客 586

19-5 ACC 自适应巡航控制系统需求

本专题由深圳季连AIgraphX李博及团队出品,主要讲解ACC自适应巡航控制系统的开发与仿真测试。具体说来,包括ACC标准/法规分析、系统需求、系统架构、软件需求、软件架构、算法建模、验证场景分析、仿真实验搭建等内容。 本节主要讲ACC系统需求。

AIgraphX 1088

For-learning-Go-Tutorial实例教程:3分钟写出你的第一个Golang程序

For-learning-Go-Tutorial是一个面向初学者的Golang学习项目,通过简单易懂的实例帮助新手快速掌握Go语言基础。本教程将带你在3分钟内完成第一个Golang程序,体验Go语言的简洁与高效。 ## 准备工作:快速搭建Go开发环境 在开始编写程序前,需要先安装Go语言环境。访问Go官方网站下载对应操作系统的安装包,按照提示完成安装后,打开终端输入以下命令验证安装是否成功:

gitblog_01092的博客 996

飞书接入OpenClaw:从零到一的保姆级图文教程

本文主要介绍了飞书接入OpenClaw:从零到一的保姆级图文教程,希望能对学习使用OpenClaw 的同学们有所帮助。 文章目录 1. 背景 2. 解决方案 2.1 步骤一:安装插件 2.2 步骤二:创建机器人应用 2.3 步骤三:测试 3. 注意事项

weixin_43178406的博客 13万+

线性代数 --- 置换矩阵 (Permutation matrix)

置换矩阵 - permutation matrix

松下J27录放机 3万+

Go语言基础-基础语法

Go语言基础-基础语法。快速掌握!!!

奔走的王木木Sir的博客 1149

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

01|知识回顾:Go基础知识你真的掌握了吗?

你好,我是郑建勋。在开篇词我们就提到,这个专栏的目标就是完成一个结合了高并发、分布式、微服务的复杂Go语言项目。构建一个复杂的Go项目就和搭建复杂的积木一样。想象一下,当我们想搭建复杂的积木时,首先需要准备良好的环境(宽阔整洁的桌面、收纳盒),拥有基础的要素(各种类型的零件),掌握必要的规则(说明书中零件拼接的规则)。同样的,在构建复杂Go语言项目之前,我们也需要掌握一些Go语言的基础知识。我在实...

优快云学习 444

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

01-Go语言开发环境准备

Go开发环境搭建

weixin_38753143的博客 383

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

go环境搭建_容器化 Go 开发环境的尝试

Go语言中文网,致力于每日分享编码知识,欢迎关注我,会有意想不到的收获!01 写在前面昨天上午“起早”到附近的影院看《波西米亚狂想曲》,选的座位比较靠前,最后的二十分钟里愣是没好意思把裤兜里的纸巾掏出来 。未来打算用三到五年的时间去开创自己的事业,想必道路不会平坦,不过认真做事的态度不变,大概率这段人生会有一个“酣畅淋漓”的收尾吧。本文是我在思考“如何组建团队”时候的一个小尝试,旨在通过容器技术(...

weixin_39926639的博客 237

go01 简介和准备

go01 简介和准备 package、import、func package 关键字声明了代码所属的包。Go 语言里所有的代码都被分为不同的包。 Go 提供了一个标准库,它由 math、compression、cryptography 等 package 组成,每个 package 都能做一类工作。 import 关键字指明了代码所需要使用的 package。每个 package 里面都包含很多函数(function)。 func 关键字声明了一个函数。 函数体需要使用 { } 括起来,这样的话 Go

Newin2020的博客 507

【亲测免费】 Learning Go 编程项目教程

Learning Go 编程项目教程 1. 项目介绍 learning-go 是一个开源项目,旨在帮助开发者学习 Go 编程语言。该项目由 Vladimir Vivien 创建,是他的书籍《Learning Go Programming》的配套源代码库。通过这个项目,开发者可以深入了解 Go 语言的核心概念和高级特性,并通过实际的代码示例进行实践。 2. 项目快速启动 2.1 环境准备 在开始之前...

gitblog_01151的博客 1092

golang面试:golang基础语法(一)

最近忙于面试,就顺便把这个更新到blog上面方便随时查看,有些不对的请留意告知,内容大多数来源前辈的文章,因为当时做笔记也搞忘复制链接了,如果有知道的欢迎补充,我会补上链接。在初始化后长度是固定的,无法修改其长度。接口类型,是一种抽象的类型,它不会暴露它所代表的对象的内部值和对象支持的操作方法。数组是内置(build-in)类型,是一组同类型数据的集合,它是值类型,通过从0开始的下标索引访问元素值。数组的长度是数组类型的一部分,所以[3]int 和 [4]int 是两种不同的数组类型。

叫好与叫座虽然不是对立面,但想在同一个作品中达到双重效果很难。 347

golang socket读写同时_golang 并发编程

并发是 golang 的优势之一,使用关键字 go 可以很方便的开启一个协程. go 语言中,常常用 go、chan、select 及 sync 库完成并发操作,处理同步、异步、阻塞、非阻塞任务.1. 概要go 语言的并发编程,以下是需要了解的基础知识点,也是本文主要介绍的内容. 可以对照看看这些是否已经可以熟练运用了.阻塞: 阻塞是进程(也可以是线程、协程)的状态之一(新建、就绪、运行、阻塞、终...

weixin_39933082的博客 764

构建 Go 开发环境:从安装、GOPATH 工作区到命令行工具与编辑器(Build Web Application with Golang 第 1 章)

> 本文基于开源仓库 [build-web-application-with-golang](https://link.gitcode.com/i/a8a19b45f02a8d8f95ab3eba6c4ceee7) 英文版第 1 章《Go Environment Configuration》([en/01.0.md](https://link.gitcode.com/i/913e203981fbd

gitblog_00815的博客 213

Hacking-with-Go:安全专业人士的终极Golang入门指南

Hacking-with-Go是一个专为安全专业人士设计的Golang学习项目,旨在填补Go语言安全工具开发领域的空白。当开始学习Go时,很多教程都未能针对安全从业者的需求,而本项目参考《Gray/Black Hat Python/C#》系列书籍的风格,通过实用案例帮助安全人员掌握Go语言,无需冗长的理论,直接应用于实际场景。 ## 为什么选择Golang进行安全开发? Python在安全领域

gitblog_00284的博客 621
上一篇: 虹剑集诗词录存
下一篇: Golang-02基础编程_基本数据类型与复合数据类型
d3y1
博客等级 码龄12年 1438粉丝 2772原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值