前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >从0开始学习黑客编程--第一节.环境搭建2

从0开始学习黑客编程--第一节.环境搭建2

作者头像
字节脉搏实验室
发布2021-04-20 11:13:49
3700
发布2021-04-20 11:13:49
举报

在写第二篇文章开始前,请允许本人先说两句,当然,不允许我也会说毕竟文章是我在写嘛。

首先,非常感谢大佬们的支持,特别是本书的作者,因为大佬的赞美给了我继续写下去的动力,若没有大佬在,或许就没有这第二篇,毕竟要是被大佬问着“为啥不继续写了”的话,就会非常的尴尬。所以说,多赞美别人,世界将会更加美好,当然,如果能点个赞就更好了,请务必点个赞再走!

另外,我决定削减每个章节表情包的数量,粗略估计了一下,搞不好书只记录了一半,表情包素材却枯竭了~就我这个用表情包的速度,要不是聊天经常用同款,估计各表情包软件的更新速度还没我用的快~

------------------(*╹▽╹*)可爱的分割线------------------

好了,回到正题,上回说到哪了来着。。。我先去看看。。。

哦,说到工程项目设置了,上回把那个几千块的软件下载了下来,也不知道大家体验过了没有,体验过的也不知道删了没有,没删的也不知道自己去研究了没有。。。反正我是不想讲这一节。。。

你问我为啥?

都说了这节是环境配置,好不容易把环境配置好,又要写文章重新记录一遍,谁记得最开始的默认配置是啥啊。我真不想卸掉重新下一遍。

根据这些破软件的尿性,万一在电脑某个小角落存了一丢丢配置信息,重新装了跟没重新装一样,那就悲剧了。所以我决定,偷工减料,把关键的几个点说了就行了,剩下的就不负责任的让你们随缘了。

首先,我们打开那个v啥啥的2019。

右边开始使用的最下面,有一行蓝色字体,对没错,就是那个仿佛近视一千度不戴眼镜看不到的那一行字体。从这个UI设计就能感受到设计这款软件的攻城狮满满的恶意,外加夹杂着资本主义渴望压榨全球程序员的罪恶思想。

点开那一行“继续但无需代码”,你将会进入一个放空状态~啊,不好意思,是你的电脑将会进入一个放空的界面。

你看,是不是空荡荡的,完全激不起任何的欲望嘛~维多利亚的秘密都比这个好看。

(你该不会以为我会放T台走秀的图片吧?请回去背社会主义核心价值观。)

但是有句话说的好,人不可貌相,这只是外观上,从实际上说,咱们这个比维多利亚的秘密有意思多了,维多利亚的秘密也只能看看,而这玩意你还能玩玩,看得见又摸得着的,不香么?

当你按着我说的方式进入这个程序之后,你会发现,哎,这个和书上说的好像不一样耶?书上说要在打开一个工程项目之后去配置,这个都没打开工程嘛~

当然是选择不打开工程啦,因为上一篇少弄了一个东西。

我们回到书上,这本书的该小节有两个比较主要的部分,一个是1.2.1,然后另一个是1.2.2(说了等于没说!二货!把小节名称打出来啊!)啊~不好意思,我拍个照。

然后这俩玩意分别是干啥的呢?

1.2.1的话是配置对程序进行编译的环境,因为C语言是一款编译型的语言,需要编译后才能使用。那么什么叫编译型语言,什么叫编译呢?

编译型语言就是程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了(抄的百度)。。。

看不懂?我也看不懂,算了,简单点说,就好比你写一本书给外国佬看(写一个程序让计算机执行),然后你又不会外语(机器语言),只能写中文(源代码)对吧?写出来外国人(计算机)看不懂啊,然后你就想办法让外国佬能看懂,就掏出了百度翻译(编译器)把这本书进行了翻译(编译源代码),然后翻译完了之后生成了一本新的外语版的书(计算机可执行文件),然后老外就能够直接读这本书(计算机直接运行不需要源代码)。

如果你看了这个还看不懂的话。。。可能你还不知外国人和外语是啥。。。个人建议您穿越到古代( • ̀ω•́ )。

所以实际上这个1.2.1就是配置编译环境,说白了就是选择一下使用百度翻译还是使用有道词典,又或者使用谷歌翻译,区别不算很大,但是各有不同。。。(请以上三家看到了给我银行卡里打一下广告费谢谢)

关于这个小版块里面的平台工具集嘛。。。书上说的没错,所以我就不解释了(就是个系统兼容性的问题,你可以理解为一个是普通话版本,一个方言版本,普通话(带xp的)大家都能听懂,方言版的(不带xp)有的人可能听不懂)。

运行库就是一个很恶心的东西了,他一共有三个部分组成,M,T(或者D),d(或者没有d)。

这里M指的多线程,因为都有,我就不作专门解释。

T和D的区别就是静态和动态,T好像是static的缩写来着,D是dynamic(或许吧,我百度翻译的,麻烦百度再给我打一波钱),静态和动态主要影响的是DLL所在位置,静态会把DLL写到程序里面,所以生成的可执行文件就比较大。啊?你问我DLL是啥?就是你用windows10玩一些十几年前的远古时期的游戏,然后发现游戏打不开,说缺少什么.dll文件,就是这个文件,他是用来封装一些不需要经常更新的程序代码的。。。举个例子。。。打开你的腾讯大礼包。。。再举个简单的例子,你要想生成的东西能够在各版本系统正常运行,不会报错说丢失文件无法启动,就得把dll用静态的方式写到文件里面,就是使用MT的形式。

d的话是debug(注意和前面的dll区分哈~),意思是排错,就是在调试的时候加入一些调试信息,会导致编译出来的东西体积变大,就好比你给翻译的书里加了注释。。。当然,也顺便和T-bug区分一下。。。

好,接下来是1.2.2,如果上面还有啥看不懂的,就跳过吧,反正不是非常重要,学到后面慢慢就知道了。

关于这个MFC,,,这玩意是微软提供的一个封装了系统接口的类库,比如你想查看windows里面的系统运行时的某些结果啥的,你就可以调用这个MFC。

可以看到这里有三种MFC的选择方式,第一种,有点误导人,其实把它理解为不调用MFC就行了。

我们要使用MFC的话就选择后面两种,其实这两种也比较好理解,静态就是直接生成执行文件的时候把使用的MFC对应的内容一起生成到执行文件里面,而共享DLL中使用MFC就需要系统自己带着对应MFC的DLL。

怎么样,晕了没有。。。说好的好理解呢?

好吧,我说明白一点,静态库中使用MFC,就好比老外给了你一本外国流行词大全(MFC),让你翻译的时候可以直接把这个流行词大全里面的词写到你的翻译出来的书里,顺便在把他的意思标注在注释里面,这样无论看的懂看不懂的都能看的懂(MFC的DLL比较全的系统和不全的系统)。

而共享DLL呢,则是你翻译的时候,不把流行词大全里面的东西写到注释里面而直接用,这样的话就需要阅读的那个人拥有一本流行词大全,才能在他看的时候及时查到啥意思。。。

这样就简单易懂了,恩,我感觉应该简单易懂了。

然后我发现我好像偏离了之前说的东西,前面不是说上一篇少了啥东西嘛。。。少的,就是这个MFC。。。记得我们上一篇安装时候。。。

flag立的飞起。。。但是你看我这个大概说的,表明实际上我已经有先见之明了,早就把坑给填上了。写错啥的,不可能。

为什么我说这个是个问题呢,,,因为我们没有安装供静态MFC编译的VS配置文件。。。

重新把这玩意安装一下就行了。

那么,第一个大板块就写完了。什么?你问我1.3?那玩意我没报错,而且大佬在书上已经写的很明白了,我就不重复了,所以就跳过~~~(其实是不知道怎么写。。。)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-04-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 字节脉搏实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档