自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (3)
  • 收藏
  • 关注

原创 动图图解!代码执行send成功后,数据就发出去了吗?

今天又是被倾盆的需求淹没的一天。有没有人知道,那种“我用3句话,就让产品为我砍了18个需求”的鸡汤课在哪报名,想报。"听懂掌声"的那种课就算了,太费手了。扯远了,回到我们今天的正题,我们了解下这篇文的目录。代码执行send成功后,数据就发出去了吗?回答这个问题之前,需要了解什么是Socket 缓冲区。Socket 缓冲区什么是 socket 缓冲区编程的时候,如果要跟某个IP建立连接,我们需要调用操作系统提供的 socket API。socket 在操作系统层面,可以理解为一个文件

2021-07-26 08:57:38 929

原创 在网上看猫片被老板发现?不如按下F12学学HTTP

文章持续更新,可以微信搜一搜「golang小白成长记」第一时间阅读,回复【教程】获golang免费视频教程。本文已经收录在GitHub https://github.com/xiaobaiTech/golangFamily , 有大厂面试完整考点和成长路线,欢迎Star。什么是HTTPHTTP 全称超⽂文本传输协议,也就是HyperText Transfer Protocol。其中我们常见的文本,图片,视频这些东西都可以用超文本进行表示,而我常看的猫片,也属于超文本,所以大家不要再说我偷偷看..

2021-02-20 08:06:43 1735

原创 【吐血整理】超全golang面试题合集+golang学习指南+golang知识图谱+成长路线 一份涵盖大部分golang程序员所需要掌握的核心知识。

由于外链问题,完整版可【点击】阅读原文或到 github项目 中,欢迎关注。目录(善用Ctrl+F)基础入门新手Golang开发新手常犯的50个错误数据类型连nil切片和空切片一不一样都不清楚?那BAT面试官只好让你回去等通知了。golang面试题:字符串转成byte数组,会发生内存拷贝吗?golang面试题:翻转含有中文、数字、英文字母的字符串golang面试题:拷贝大切片一定比小切片代价大吗?map不初始化使用会怎么样map不初始化长度和初始化长度的区别map承载多大,..

2021-01-11 12:37:38 4976 4

原创 golang面试题:怎么避免内存逃逸?

问题怎么避免内存逃逸?怎么答在runtime/stubs.go:133有个函数叫noescape。noescape可以在逃逸分析中隐藏一个指针。让这个指针在逃逸分析中不会被检测为逃逸。 // noescape hides a pointer from escape analysis. noescape is // the identity function but escape analysis doesn't think the // output depends on the input.

2020-06-08 09:59:12 1279

原创 分库分表会带来读扩散问题?怎么解决?

今天这篇文章,其实也是我曾经面试中遇到过的真题。分库分表大家可能听得多了,但读扩散问题大家了解吗?这里涉及到几个问题。分库分表是什么?读扩散问题是什么?分库分表为什么会引发读扩散问题?怎么解决读扩散问题?能不能不要在评论区叫我刁毛?不好意思,失态了。这些问题还是比较有意思的。相信兄弟们也一定有机会遇到哈哈哈。我们先从分库分表的话题聊起吧。我们平时做项目开发。一开始,通常都先用一张数据表,而一般来说数据表写到2kw条数据之后,底层B+树的层级结构就可能会变高,不同层级的数据页一般都放在磁盘里不同的地方,换言之

2022-06-01 07:36:42 448 3

原创 mysql查询 limit 1000,10 和limit 10 速度一样快吗?如果我要分页,我该怎么办?

刷网站的时候,我们经常会遇到需要分页查询的场景。比如下图红框里的翻页功能。我们很容易能联想到可以用mysql实现。假设我们的建表sql是这样的mysql建表sql建表sql大家也不用扣细节,只需要知道id是主键,并且在user_name建了个非主键索引就够了,其他都不重要。为了实现分页。很容易联想到下面这样的sql语句。select * from page order by id limit offset, size;

2022-05-09 21:44:30 315 1

原创 都是同样条件的mysql select语句,为什么读到的内容却不一样?

假设当前数据库里有下面这张表。user表数据库原始状态老规矩,以下内容还是默认发生在innodb引擎的可重复读隔离级别下。都是select结果却不同大家可以看到,线程1,同样都是读 age >= 3 的数据。第一次读到1条数据,这个是原始状态。这之后线程2将id=2的age字段也改成了3。线程1此时再读两次,一次读到的结果还是原来的1条,另一次读的结果却是2条,区别在于加没加for update。为什么同样条件下,都是读,读出来的数据却不一样呢?可重复读不是要求每次读出来的内容要一样吗?要回答这个问题

2022-04-28 06:28:50 1219

原创 Mysql的索引为什么使用B+树而不使用跳表?

在我们的印象中,mysql数据表里无非就是存储一行行的数据。跟个excel似的。直接遍历这一行行数据,性能就是O(n),比较慢。为了加速查询,使用了B+树来做索引,将查询性能优化到了O(lg(n))。但问题就来了,查询数据性能在 lg(n) 级别的数据结构有很多,比如redis的zset里用到的跳表,也是lg(n),并且实现还贼简单。那为什么mysql的索引,不使用跳表呢?我们今天就来聊聊这个话题。B+树的结构之前的一篇文章里,已经提到过B+树的结构了。文章不长,如果没看过,建议先看下。当然,不看也行。在这

2022-04-20 10:44:34 2217 6

原创 ​Mysql数据库查询好慢,除了索引,还能因为什么?

我熟练应用ctrl c和ctrl v 开发curd代码好多年了。mysql查询为什么会慢,关于这个问题,在实际开发经常会遇到,而面试中,也是个高频题。遇到这种问题,我们一般也会想到是因为索引。那除开索引之外,还有哪些因素会导致数据库查询变慢呢?有哪些操作,可以提升mysql的查询能力呢?今天这篇文章,我们就来聊聊会导致数据库查询变慢的场景有哪些,并给出原因和解决方案。数据库查询流程我们先来看下,一条查询语句下来,会经历哪些流程。比如我们有一张数据库表CREATE TABLE&nb

2022-04-13 08:37:53 938

原创 为什么大家说mysql数据库单表最大两千万?依据是啥?

故事从好多年前说起。想必大家也听说过数据库单表建议最大2kw条数据这个说法。如果超过了,性能就会下降得比较厉害。巧了。我也听说过。但我不接受它的建议,硬是单表装了1亿条数据。这时候,我们组里新来的实习生看到了之后,天真无邪的问我:"单表不是建议最大两千万吗?为什么这个表都放了1个亿还不分库分表"?我能说我是因为懒吗?我当初设计时哪里想到这表竟然能涨这么快。。。我不能。说了等于承认自己是开发组里的毒瘤,虽然我确实是,但我不能承认。我如坐针毡,如芒刺背,如鲠在喉。开始了一波骚操作。"我这么做是有道理的""虽然这

2022-04-05 23:14:49 5716 12

原创 给32位系统装8g内存条能用吗?为什么?

关于32位和64位,这个概念一直让人比较懵。在买电脑的时候,我们看到过32位和64位CPU。下软件的时候,我们也看到过32位或64位的软件。就连装虚拟机的时候,我们也看过32位和64位的系统。在写代码的时候,我们的数值,也可以定义为int32或者int64。我们当然很清楚,装软件的时候,一般64位的系统就选64位的软件,肯定不出错,但是这又是为什么呢?既然CPU,软件,操作系统,数值大小都有32位和64位,他们之间就可以随意组合成各种问题,比如32位的系统能装64位的软件吗?32位的系统能计算int64的数

2022-03-11 10:02:48 5233 2

原创 大学生毕业找工作,该选择哪个方向?

兄弟们。出来说骚话啊。考虑到,读者里面,有不少是还未踏入社会的学生党。今天在这里想简单介绍下行业的区别。虽然都是写代码,虽然大家都叫程序员,但其实,分为很多种类。程序员大体上分为前端和后端。因为我不懂前端,所以这里主要讲下后端吧。而后端,可以从很多角度进行分类。我们从大家最熟悉的大学专业开始展开吧。非计算机专业一般提到程序员,都会以为都是计算机专业的,但其实除了计算机专业外,还有一些专业,比如电气工程、自动化、通信工程等,都会有不少相关的对口程序员工种。比如大学时候学的51单片,STM32之类的相关,那个其

2021-11-29 12:21:23 3111

原创 动图图解,怎么让goroutine跑一半就退出?

光看标题,大家可能不太理解我说的是啥。我们平时创建一个协程,跑一段逻辑,代码大概长这样。package main import ( "fmt" "time")func Foo() { fmt.Println("打印1") defer fmt.Println("打印2") fmt.Println("打印3")} func main() { go Foo() fmt.Println("打印4") time.Sleep(1000*ti

2021-11-21 15:21:27 664 1

原创 连接一个 IP 不存在的主机时,握手过程是怎样的?

文章首发于个人公众号「小白debug」 原文链接:连接一个 IP 不存在的主机时,握手过程是怎样的?鸽了好长时间了,最近很忙。以前工作忙完,就抽空写文章。现在忙完工作,还要一三五学驾照,二四六看家具。有同感的老铁们不要举手,拉到右下角点个"在看"就好了。真的,全怪某音。扯远了,回到今天的主题。方兄最近写了篇很赞的文章 写给想去字节写 Go 的你 ,里面提到了两个问题。连接一个 IP 不存在的主机时,握手过程是怎样的?连接一个 IP 地址存在但端口号不存在的主机时,握.

2021-07-08 08:37:38 679 1

原创 硬核图解!断网了,还能ping通 127.0.0.1 吗?为什么?

首发于个人公众号:golang小白成长记原文地址:硬核图解!断网了,还能ping通 127.0.0.1 吗?为什么?你女神爱不爱你,你问她,她可能不会告诉你。但网通不通,你 ping 一下就知道了。可能看到标题,你就知道答案了,但是你了解背后的原因吗?那如果把 127.0.0.1 换成 0.0.0.0 或 localhost 会怎么样呢? 你知道这几个IP有什么区别吗?以前面试的时候就遇到过这个问题,大家看个动图了解下面试官和我当时的场景,求当时小白的心里阴影面积。话不多说,我们直接开车。.

2021-06-17 10:10:57 1456 4

原创 爷青回!最近很火的朋友圈怀旧小电视源码来啦!看到最后一个视频我大呼好家伙!

原文首发于公众号:【golang小白成长记】爷青回!最近很火的朋友圈怀旧小电视源码来啦!看到最后一个视频我大呼好家伙!体验一把怀旧小电视最近朋友圈被怀旧小电视刷爆啦!点开来,是一台老式电视机!点开右下角的小按钮,电视机能被打开!这就相当有趣了。熟悉的小叮当就播起来了~右边的两道杠,还能调音量。这就相当逼真了。出于好奇心,关掉电视机,再打开,还有一定的几率能换台哈哈哈哈!我尝试了几次,有黑猫警长[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0s8O.

2021-05-30 11:51:19 4684 1

原创 动图图解!GMP模型里为什么要有P?背后的原因让人暖心

文章持续更新,可以微信搜一搜「golang小白成长记」第一时间阅读,回复【教程】获golang免费视频教程。本文已经收录在GitHub https://github.com/xiaobaiTech/golangFamily , 有大厂面试完整考点和成长路线,欢迎Star。GM模型是什么在 Go 1.1版本之前,其实用的就是GM模型。G,协程。通常在代码里用 go 关键字执行一个方法,那么就等于起了一个G。M,内核线程,操作系统内核其实看不见G和P,只知道自己在执行一个线程。G和P都是在.

2021-05-12 22:18:53 1001 3

原创 i/o timeout , 希望你不要踩到这个net/http包的坑

文章持续更新,可以微信搜一搜「golang小白成长记」第一时间阅读,回复【教程】获golang免费视频教程。本文已经收录在GitHub https://github.com/xiaobaiTech/golangFamily , 有大厂面试完整考点和成长路线,欢迎Star。问题我们来看一段日常代码。 1packagemain 2 3import( 4"bytes" 5"encoding/json" 6"fmt" 7"io/iouti...

2021-04-20 10:47:00 1369

原创 连nil切片和空切片一不一样都不清楚?那BAT面试官只好让你回去等通知了

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Jp1TlBFy-1617862011452)(http://qh1adizvv.hn-bkt.clouddn.com/nil%E5%88%87%E7%89%87%E5%92%8C%E7%A9%BA%E5%88%87%E7%89%87%E5%B0%81%E9%9D%A2.png)]连nil切片和空切片一不一样都不清楚?那BAT面试官只好让你回去等通知了。问题package mainimport ( "fmt" "re

2021-04-08 14:07:09 1423

原创 程序猿的第一本互联网黑话指南

文章持续更新,可以微信搜一搜「golang小白成长记」第一时间阅读,回复【教程】获golang免费视频教程。本文已经收录在GitHub https://github.com/xiaobaiTech/golangFamily , 有大厂面试完整考点和成长路线,欢迎Star。很烦,小侄子最近不给我打电话了。放下作为叔叔的面子,拨通电话。他说,他最近很烦。我以为他长大了,谈恋爱了。他说,最近他们学校,换了个校长。喜欢在早上升国旗之后发表演讲。“发表演讲挺好的啊,德智体美。”他说他听不懂。..

2021-04-08 09:39:29 536 4

原创 TCP粘包为什么会粘包? 背后的原因让人暖心

事情从一个健身教练说起吧。李东,自称亚健康终结者,尝试使用互联网+的模式拓展自己的业务。在某款新开发的聊天软件琛琛上发布广告。键盘说来就来。疯狂发送"李东",回车发送!,“亚健康终结者”,再回车发送!还记得四层网络协议长什么样子吗?四层网络模型每层各司其职,消息在进入每一层时都会多加一个报头,每多一个报头可以理解为数据报多戴一顶帽子。这个报头上面记录着消息从哪来,到哪去,以及消息多长等信息。比如,mac头部记录的是硬件的唯一地址,IP头记录的是从哪来和到哪去,传输层头记录到是到达目的主机后具.

2021-03-23 08:37:10 909

原创 女朋友看了会生气的回答: URI和URL有什么区别?

URL是什么URL 代表着是统一资源定位符(Uniform Resource Locator)。作用是为了告诉使用者 某个资源在 Web 上的地址。这个资源可以是一个 HTML 页面,一个 CSS 文档,一幅图像或一个猫片等等。上面我们请求猫片的URL就是https://upos-sz-staticks3.bilivideo.com/cmaskboss/164203142_30_1.jpg这里面细分,又可以分为好几个部分。协议部分表示该URL的协议部分为http还是https,会用**//为分

2021-02-25 12:54:10 170

原创 女朋友看了会生气的回答: URI和URL有什么区别?

URL是什么URL 代表着是统一资源定位符(Uniform Resource Locator)。作用是为了告诉使用者 某个资源在 Web 上的地址。这个资源可以是一个 HTML 页面,一个 CSS 文档,一幅图像或一个猫片等等。上面我们请求猫片的URL就是https://upos-sz-staticks3.bilivideo.com/cmaskboss/164203142_30_1.jpg这里面细分,又可以分为好几个部分。协议部分表示该URL的协议部分为http还是https,会用**//为分

2021-02-25 07:21:14 154

原创 程序员划水指南

快过年了,跟我可爱的小侄子通了个电话,上来就说,“叔叔你头发怎么变少了”,我很痛心,我的小侄子,年纪轻轻的,眼神已经这么不好使了。但转念一想,这也是他对我的一种关心,作为叔叔,也该回应一把,今年过年给他带一本《少儿编程》回去当礼物吧。但转念又一想,也许我真的头发变少了呢,我强壮的体魄不再足以支撑我肮脏的灵魂了呢,或许真的应了那句古语,程序员固有一死,要么骚死,要么猝死? 我好残忍,我竟然想让我的小侄走上这么一条不归路。可是我这一身编程本领好想传授予人,我还想不想那么快一"猝"而就。我还想看着小侄子长大.

2021-01-20 07:32:15 25893 71

原创 resp.Body.Close() 引发的内存泄漏goroutine个数

resp.Body.Close() 引发的内存泄漏goroutine个数。问题package mainimport ( "fmt" "io/ioutil" "net/http" "runtime")func main() { num := 6 for index := 0; index < num; index++ { resp, _ := http.Get("https://www.baidu.com") _, _ = ioutil.ReadAll(resp.Bo.

2020-11-24 12:52:23 1938 2

原创 昨天那个在for循环里append元素的同事,今天还在么?

昨天那个在for循环里append元素的同事,今天还在么?问题package mainimport "fmt"func main() { s := []int{1,2,3,4,5} for _, v:=range s { s =append(s, v) fmt.Printf("len(s)=%v\n",len(s)) }}这个代码会造成死循环吗?怎么答不会死循环,for range其实是golang的语法糖,在循环开始前会获取切片的长度 len(切片),然后再执行le.

2020-09-22 09:09:00 339

原创 golang面试官:for select时,如果通道已经关闭会怎么样?如果select中只有一个case呢?

golang面试官:for select时,如果通道已经关闭会怎么样?如果select中只有一个case呢?问题for循环select时,如果通道已经关闭会怎么样?如果select中的case只有一个,又会怎么样?怎么答for循环select时,如果其中一个case通道已经关闭,则每次都会执行到这个case。如果select里边只有一个case,而这个case被关闭了,则会出现死循环。解释1.for循环里被关闭的通道c通道是一个缓冲为0的通道,在main开始时,启动一个协程对c通.

2020-07-14 08:46:58 3391 2

原创 golang面试题:对已经关闭的的chan进行读写,会怎么样?为什么?

问题对已经关闭的的chan进行读写,会怎么样?为什么?怎么答读已经关闭的chan能一直读到东西,但是读到的内容根据通道内关闭前是否有元素而不同。如果chan关闭前,buffer内有元素还未读,会正确读到chan内的值,且返回的第二个bool值(是否读成功)为true。如果chan关闭前,buffer内有元素已经被读完,chan内无值,接下来所有接收的值都会非阻塞直接成功,返回 channel 元素的零值,但是第二个bool值一直为false。写已经关闭的chan会panic举例1.

2020-06-25 08:22:09 3677

原创 golang面试题:对未初始化的的chan进行读写,会怎么样?为什么?

问题对未初始化的的chan进行读写,会怎么样?为什么?怎么答读写未初始化的chan都会阻塞。举例1.写未初始化的chanpackage main// 写未初始化的chanfunc main() { var c chan int c <- 1}// 输出结果fatal error: all goroutines are asleep - deadlock!goroutine 1 [chan send (nil chan)]:main.main() /U.

2020-06-21 13:29:34 2302

原创 golang面试题:reflect(反射包)如何获取字段tag​?为什么json包不能导出私有变量的tag?

问题json包里使用的时候,会结构体里的字段边上加tag,有没有什么办法可以获取到这个tag的内容呢?举例tag信息可以通过反射(reflect包)内的方法获取,通过一个例子加深理解。package mainimport ( "fmt" "reflect")type J struct { a string //小写无tag b string `json:"B"` //小写+tag C string //大写无tag D string `js.

2020-06-15 06:44:35 1899

原创 golang面试题:json包变量不加tag会怎么样?

问题json包里使用的时候,结构体里的变量不加tag能不能正常转成json里的字段?怎么答如果变量首字母小写,则为private。无论如何不能转,因为取不到反射信息。如果变量首字母大写,则为public。不加tag,可以正常转为json里的字段,json内字段名跟结构体内字段原名一致。加了tag,从struct转json的时候,json的字段名就是tag里的字段名,原字段名已经没用。举例通过一个例子加深理解。package mainimport ( "encod.

2020-06-14 09:02:15 1457

原创 高频golang面试题:简单聊聊内存逃逸?

问题知道golang的内存逃逸吗?什么情况下会发生内存逃逸?怎么答golang程序变量会携带有一组校验数据,用来证明它的整个生命周期是否在运行时完全可知。如果变量通过了这些校验,它就可以在栈上分配。否则就说它 逃逸了,必须在堆上分配。能引起变量逃逸到堆上的典型情况:在方法内把局部变量指针返回 局部变量原本应该在栈中分配,在栈中回收。但是由于返回时被外部引用,因此其生命周期大于栈,则溢出。发送指针或带有指针的值到 channel 中。 在编译时,是没有办法知道哪个 goroutine 会在 c.

2020-06-03 08:40:16 706 1

原创 golang面试题:拷贝大切片一定比小切片代价大吗?

问题拷贝大切片一定比小切片代价大吗?怎么答并不是,所有切片的大小相同;三个字段(一个 uintptr,两个int)。切片中的第一个字是指向切片底层数组的指针,这是切片的存储空间,第二个字段是切片的长度,第三个字段是容量。将一个 slice 变量分配给另一个变量只会复制三个机器字。所以 拷贝大切片跟小切片的代价应该是一样的。解释SliceHeader是切片在go的底层结构。type SliceHeader struct { Data uintptr Len int Cap int.

2020-06-02 13:02:51 1408

原创 golang面试题:翻转含有`中文、数字、英文字母`的字符串

问题翻转含有中文、数字、英文字母的字符串"你好abc啊哈哈"代码实现package mainimport"fmt"func main() { src := "你好abc啊哈哈" dst := reverse([]rune(src)) fmt.Printf("%v\n", string(dst))}func reverse(s []rune) []rune { for i, j := 0, len(s)-1; i < j; i, j = i+1, j-1 { s[i].

2020-06-02 13:01:58 1327

原创 golang面试题:字符串转成byte数组,会发生内存拷贝吗?

问题字符串转成byte数组,会发生内存拷贝吗?怎么答字符串转成切片,会产生拷贝。严格来说,只要是发生类型强转都会发生内存拷贝。那么问题来了。频繁的内存拷贝操作听起来对性能不大友好。有没有什么办法可以在字符串转成切片的时候不用发生拷贝呢?代码实现package mainimport ( "fmt" "reflect" "unsafe")func main() { a :="aaa" ssh := *(*reflect.StringHeader)(unsafe.Pointer(.

2020-06-02 13:00:36 1364 1

原创 golang面试题:能说说uintptr和unsafe.Pointer的区别吗?

问题能说说uintptr和unsafe.Pointer的区别吗?怎么答unsafe.Pointer只是单纯的通用指针类型,用于转换不同类型指针,它不可以参与指针运算;而uintptr是用于指针运算的,GC 不把 uintptr 当指针,也就是说 uintptr 无法持有对象, uintptr 类型的目标会被回收;unsafe.Pointer 可以和 普通指针 进行相互转换;unsafe.Pointer 可以和 uintptr 进行相互转换。举例通过一个例子加深理解,接下来尝试用指针的.

2020-06-02 12:59:05 825

原创 go module使用教程:使用go mod的方法.报错go: cannot determine module path for source directory E:\tttttt (outside

使用go mod的方法单独从大工程里拷出小文件想新建新文件工程时,部分文件路径名报红,出现报错go: cannot determine module path for source directory E:\tttttt (outside GOPATH, no import comments)1.在src 目录下新建 go.mod文件2. go.mod中第一行加入一行内容 module ...

2019-03-11 17:14:02 22742 3

原创 使用VS2013 实现一个简单的单例模式singleton

使用VS2013 实现一个简单的单例模式singleton1.在singleton.h 中加入以下内容#ifndef SINGLETON#define SINGLETON//方便之后的调用,MyClass::Instance()->GetVal() 太长,现在变成MyCls->GetVal();#define MyCls MyClass::Instance() class MyClass{

2017-09-21 16:45:07 784

原创 XML转Excel或Excel转XML|tinyxml简单使用|C++使用excel

最近做了一个小工具,可以将XML和Excel之前互转。里面用到的XML读写库是tinyxml,在Excel2010上运行,请先确保装了Excel,而不是WPS。代码写的比较挫,一大坨,最近忙也懒得去做优化了。github地址:XML与Excel互转工具目前只支持ANSI格式的Excel文件与ANSI格式的XML文件互转。由于在写的时候,里面的存储方式都是CString,默认为ANS

2017-08-26 17:33:01 4225

原创 将github上开源项目放到自己仓库并在本地并进行修改

首先保证已经装好git,我装的是 Git-2.12.2.2-64-bit.exe ,也需要申请一个github账号。1、本地创建ssh key 这个比较简单,可以自行百度 $ ssh-keygen -t rsa -C “hahahahaha@yeah.net” 打开 C:\Users\allen.ssh\id_rsa.pub 中的内容,复制到github中2.验证本地创建SSh

2017-08-26 16:55:07 6293

背包问题九讲.pdf

背包问题九讲.pdf

2017-08-26

编程珠玑.pdf

编程珠玑

2017-08-26

操作系统原理.pdf

操作系统

2017-08-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除