1-02VS的安装与测试

news2024/10/3 10:34:59

一、概述

对于一名C语言程序员而言,进行C语言程序的开发一般需要一个文本编辑器加上一个编译器就足够了。但为了方便起见,我们选择使用集成开发环境——Visual Studio(简称VS)。安装Visual Studio

下面讲一下如何安装VS,按照步骤完成即可。

二、安装Visual Studio

1. 下载引导安装包

引导安装包可以从官网下载:https://visualstudio.microsoft.com/zh-hans/downloads/

选择下载社区版Community即可

图 1. VS下载引导安装包VS下载引导安装包

如果是Mac笔记本,可以选择下方的Mac版本:

图 2. VS下载引导安装包-Mac版VS下载引导安装包-Mac版

如果你不想在官网下载安装(或者你根本打不开微软的网站),可以选择从百度网盘下载引导安装包:

链接:https://pan.baidu.com/s/1e27THIEiIVGTdzYmdpHsrA?pwd=4uo0 提取码:4uo0

引导安装包直接双击打开,即可开始VS的安装。

2. 在线安装(推荐)

双击引导安装包后,就会进入工作负荷以及安装位置的选择:

  1. 工作负荷选择(也就是选择特定开发任务的工具组件集合):

    图 3. VS安装-工作负荷选择VS安装-工作负荷选择

    直接按照图示中选择C++桌面开发即可,其他的不要选择。

  2. 安装位置选择:

    图 4. VS安装-安装位置选择VS安装-安装位置选择

    建议将三个路径放在同一级目录下,这样便于管理,可以参考图片中给出的路径。

    建议安装目录不要放在系统盘下,VS作为IDE会占用较多磁盘空间。

  3. 上述设置完成后,点击安装即可。安装过程会下载较多资源,请耐心等待。

    图 5. VS安装-联网下载安装VS安装-联网下载安装

    此过程需要连接微软服务器进行在线安装,通常情况下即便不挂梯子也能正常完成安装。

  4. 安装完成后,建议重启电脑。

注意事项

  1. 安装完成后,VS一般不会自动创建桌面快捷方式,可以在开始菜单中找到VS,点击启动。建议将它发送桌面快捷方式或者钉到任务栏,后续一段时间我们会经常使用VS。

  2. 第一次启动VS,会提示登录微软账号,这一步相当于激活VS。建议登录,如果没有微软账户,建议注册一个。

    图 6. VS安装-登录微软账号VS安装-登录微软账号

  3. 如果在线安装失败(比如碰到始终卡顿在某个进度,或者直接失败),这是微软服务器的问题,此时可以考虑离线安装VS。

3. 离线安装(后补方案)

如果实在没有办法在线成功安装,可以考虑离线安装,按照以下步骤完成。

  1. 通过百度网盘获取离线安装包:

    链接:https://pan.baidu.com/s/1hp7ZAFaP_R11Ih8y0ReUTQ?pwd=jpgp 提取码:jpgp

  2. 解压离线安装压缩包,进入解压后的文件夹目录,在资源管理器的文件路径栏输入"cmd",然后回车

    图 7. 离线安装VS-步骤1离线安装VS-步骤1

    此时会在此安装包目录下,打开Windows命令行,如下图所示:

    图 8. VS离线安装-步骤2VS离线安装-步骤2

  3. 在打开的命令行中输入以下指令:

    1

    .\vs_setup.exe --noWeb --add Microsoft.VisualStudio.Workload.NativeDesktop --includeRecommended 
    

    然后回车,即可开始安装。

  4. 开始安装后,仍然进入工作负荷和安装目录的选择。此时选择安装"使用C++的桌面开发"的工作负荷,以及修改一下安装目录即可。

  5. 此安装过程全程无需联网,耐心等待安装完成即可。

注:以上操作都无法完成安装的话,可以直接求助老师。

三、使用Visual Studio进行开发

好了,到此你已经成功安装了VS,距离成为一名真正的C程序员又进了一大步。

下面我们来简单介绍一下如何使用VS进行开发,写出我们第一个C程序的演示代码——HelloWorld!。

1. 创建项目

第一次打开VS,界面如下图所示:

图 9. 第一次打开VS的效果图第一次打开VS的效果图

推荐直接选择"继续但无需代码",然后就进入了VS主界面:

图 10. VS主界面VS主界面

注:初次进入还有一个新特性提醒界面,已经被我关闭了。

点击VS左上角菜单栏的**“文件 --> 新建 --> 项目”**

图 11. 使用VS创建项目使用VS创建项目

然后进入创建新项目的选择,选择创建"控制台应用",因为我们程序的输出结果要依赖于控制台,所以创建控制台应用。

图 12. 创建控制台应用创建控制台应用

随后就进入了创建新项目的配置页面:

图 13. 配置新项目页面配置新项目页面

到这一步就是整个创建项目的流程,但最后一步**“配置新项目”**我们需要详细谈一谈。

2. 配置项目

上图的配置页面中可以看到,我们主要可以调整三个选择:

  1. 项目名称。
  2. 位置。
  3. 解决方案名称。

我们先重点来讲一下VS当中项目(project)解决方案(solution),理解它们之间的关系是使用VS的一个重点。

1. 项目 VS 解决方案(重要)

解决方案:

**解决方案是VS当中进行代码开发的顶层结构,它是一个或多个项目的容器。**用于协调多个项目之间的关系和依赖性,尤其是在大型应用程序开发中。解决方案不仅仅是项目的简单列表,它还包括项目之间的依赖关系、编译顺序以及其他元数据。

解决方案的文件夹下通常会自动生成一个扩展名为**.sln**的文件,来保存这些项目之间关系的信息。

项目:

**项目是一个C程序构建过程中的基本组织单元。**项目中会包含:源代码文件、资源文件(如图片或数据文件)、配置信息文件等。

通俗的说:

VS中的一个项目是进行开发的基本单元,一个解决方案至少有一个项目,也可以包含多个项目,这些项目可能相互依赖。解决方案会管理这些多个项目的关系。

如果你熟悉Java开发,那么可以使用IDEA和VS做一个类比:

  1. IDEA的module(模块)是开发的基本单元,project(工程)是模块的容器,一个工程最少有一个模块,但也可以有多个模块。
  2. VS的项目是开发的基本单元,解决方案是项目的容器,一个解决方案至少有一个项目,但也可以有多个项目。

2. 命名

搞清楚它们之间的关系后,就要稍微浅谈一下命名了:解决方案和项目应该如何命名呢?

首先,我们要说一个大的原则,以后大家无论进行什么语言的程序开发,在遇到命名时,都一定会存在一个大前提:“简洁明了、见名知意”!

也就是说,这个命名应当明确表达功能和作用,这是最重要的原则。

其次,一般来说,名字都应该由合法的英文单词组成,不应出现中文或者中文拼音。

最后,解决方案和项目命名的普遍约定是:

  1. **采用大驼峰命名法(也叫帕斯卡命名法)。**每个单词的首字母都大写,包括第一个单词,各个单词之间直接连接不用加下划线等符号。例如:FirstName、MyProgram等。
  2. 尽量避免出现空格,点、横杆等特殊字符。命名仅由英文字符和数字组成。

最后,关于命名并没有强制的一定的约束,具体还是要看各公司各研发单位的习惯而定。上面给出的只是大家普遍遵守的一些约定。

注意事项

为了让大家更清晰的看代码,上课时我会把解决方案、项目的命名前带上序号,比如:

  1. “00_HelloWorld”:第一个项目,这个项目叫HelloWorld。
  2. “50C_Day01”:第50期,C语言部分内容的第一天。

但一般而言,这种序号在实际开发中不会使用。

3. 完成项目创建

上面的所有内容都了解后,就可以完成一个项目的创建了,大家参考我的命名和配置:

图 14. VS项目创建配置图VS项目创建配置图

具体的解释都已经在图中贴出了,设置完成后,点击创建即可完成项目创建。

3. 创建源文件

完成项目创建后,还需要在项目下创建C语言源文件,在一个C语言的源文件当中才能够开始写C语言代码。

点击创建项目后,首先你会直接进入以下页面:

图 15. VS项目主界面-HelloWorldVS项目主界面-HelloWorld

VS会默认创建一个"HelloWorld.cpp"文件,这是一个C++源代码文件,但我们学习的是C语言,所以我们可以直接删除这个文件。

然后**“右键点击源文件 --> 添加 --> 新建项”**,

图 16. VS新建项VS新建项

此时可能会弹出以下两种窗口:

图 17. 新建项选择-情况1新建项选择-情况1

图 18. 新建项选择-情况2新建项选择-情况2

无论出现哪一种情况都一样,直接修改名字为"xxx.c",即可在源文件下面创建一个C语言源文件。

其中"xxx"代表此源文件的名字,关于源文件的命名,建议大家采取以下策略:

  1. C语言源文件通常以".c"结尾。
  2. 见名知意,使用合法的英文单词。
  3. 单词字母全部小写,如果文件名由多个单词组成,通常使用**下划线"_"**来分隔这些单词。
  4. 不要出现下划线以外的特殊字符。原则上只使用下划线、英文字母和数字作为命名且不要用数字开头。

举几个例子:

  1. a.c

  2. main.c

  3. hello.c

  4. hello_world.c

  5. 编写代码

创建完毕.c文件后,双击打开此文件,然后编写代码。

在本小节中,我们只管写代码运行,下节我们再讲这些代码的含义。

代码块 1. 一个简单的hello world案例

1

#include <stdio.h>

2

int main() {

3

printf("hello world!\n");

4

return 0;

5

}

代码编写完成后,你可以使用以下两个按钮来启动程序(在VS主界面的上方菜单栏):

图 19. VS-启动程序的两个按钮VS-启动程序的两个按钮

这两个按钮的差别是:

  1. 点击按钮1**“本地 Windows 调试器”**启动程序,此时程序会以Debug模式启动。
  2. 点击按钮2**“开始执行(不调试)”**启动程序,此时程序会以正常模式启动。

关于Debug模式和正常启动程序的区别,后续课程会详细讲解。在日常的开发中,我们更建议大家使用按钮1,以Debug模式来启动程序。

点击启动程序后,若正常运行不出意外,你会看到控制台如下图所示:

图 20. VS-HelloWorld运行结果VS-HelloWorld运行结果

当然,如果出问题大概率就是代码中的单词拼错了,某一句代码漏了分号等问题。请检查一下VS的错误输出列表,修改代码即可!

注意事项:

  1. **请大家把编译器的版本从默认的x64(64位)改为x86(32位)。**这么做的目的主要是为了上课方便以及规避一些可能存在的坑。

    即:

    图 21. 选择32位平台编译器来编译代码选择32位平台编译器来编译代码

  2. 无论点击哪个按钮,以什么模式启动程序,都需要经历编译源代码,生成可执行程序,执行可执行程序的过程。(这个过程后续会详细讲解,现在你只需要知道代码被编译执行就可以了。)

5. VS项目目录的说明(补充)

在VS的解决方案资源管理器当中,我们可以清晰的看到一个项目下面又分了几个**“层级”**,如下图所示:

图 22. VS项目的层级关系VS项目的层级关系

我们可以在解决方案资源管理器当中选择一个项目,然后右键选项点击"在文件资源管理器中打开文件夹"。此时打开的就是此项目在本地的文件目录。

如下图所示:

图 23. VS项目目录VS项目目录

我们可以发现这个项目的目录下并没有我们想象的:

  1. 头文件目录文件夹
  2. 源文件文件夹
  3. 资源文件文件夹

这是因为:VS的一个项目当中的"外部依赖项"、“头文件”、"源文件"等并不是一个物理目录,只是一个逻辑上的分类。实际上它们直接物理存储在同一个目录下!

此目录下存储的诸如.vcxproj作为后缀名的文件,实际上就是存储了这些同一个目录下的项目文件的关系。

所以就VS而言,解决方案,项目的关系可以用下图来描绘:

图 24. VS解决方案、项目组织图VS解决方案、项目组织图

试想一下,如果在VS项目的"头文件"下面创建一个"hello.h",如下图所示:

图 25. 创建一个新的头文件创建一个新的头文件

这两个文件在实际的项目目录下,是如何存储的呢?

答案很简单,直接存储在同一目录下。

6. HelloWorld程序的注意事项(重点)

对于一个简单的HelloWorld程序,代码如下:

代码块 2. 简单的HelloWorld-C程序

1

#include <stdio.h>

2

int main() {

3

printf("hello world!\n");

4

return 0;

5

}

请大家注意以下细节:

  1. “#include"和”<stdio.h>"之间一定要有一个空格!!!
  2. 代码中"int mian(){}"被成为main函数。对一个C语言程序而言,main函数(也叫主函数)是具有唯一性的,因为它是程序的入口,所有C语言的程序都会从main函数开始执行。

那么对于VS而言,若一个项目中出现了多个main函数,程序该从哪里执行呢?显然VS是不可能自己搞清楚这个事情的。

所以VS不允许一个项目中出现两个main函数,如果希望写两个main函数,请创建多个项目!

7. 多项目的解决方案如何启动?

由于一个项目只能存在一个main函数,所以如果希望多个main函数共存,就需要创建存在多个项目的解决方案。

我们已经知道这个按钮的作用是:

图 26. VS-启动C程序VS-启动C程序

编译代码,生成可执行程序,然后运行这个可执行程序。

那么如果此解决方案有多个项目,又是什么情况呢?

很简单,由于每个项目中最多只有一个main入口函数,那么VS会编译每一个项目中的代码,为每一个项目生成一个可执行文件。也就是会生成多个可执行文件。

那么问题又来了,多个可执行文件最终执行哪一个呢?还是时候全部都执行?

观察下图中同一个解决方案下的,两个项目的项目名,它们有什么区别?

图 27. 多项目解决方案多项目解决方案

很显然,第一个项目HelloWorld的名字是加粗的。这种加粗意味着项目HelloWorld是启动项目,点击启动按钮,会执行该项目生成的可执行文件。

VS也提供了修改启动项目的功能,右键单击某个项目会出现如下图所示的菜单:

图 28. VS设置启动项目VS设置启动项目

设定启动项目后,点击按钮就会运行对应项目中的main方法。

除了设置固定的启动项目外,VS还可以直接将启动项目设置为当前打开的项目,如下所示:

图 29. VS设置启动项目为当前项目VS设置启动项目为当前项目

两种方式,大家自行选择一种即可。

四、其他补充

VS在实际使用过程中,可以进行一些设置,使得它更好用。这一部分内容都不重要,也没什么必须的设置,大家感兴趣看一下,觉得无所谓就不要看了。

1. 更好用的代码提示功能

使用VS写代码时,若想选择代码提示进行输入,需要按一下Tab键再回车,这未免麻烦了点,我们可以进行以下设置,使得可以直接回车选择代码提示:

  1. 打开 Visual Studio。
  2. 点击菜单栏中的**“工具 --> 选项”**。
  3. 在左侧的导航树中,定位到**“文本编辑器 --> C/C++ --> 高级”**。
  4. 在右侧的设置列表中,找到与 IntelliSense 相关的设置。
  5. 将"主动提交成员列表"从默认设置的False改成True。

图 30. 更好用的代码提示功能-设置界面更好用的代码提示功能-设置界面

设置完成后,代码提示出现时就可以直接回车选择生成代码了,这样会更方便一些。

2. 查看或修改C语言版本

要查看或修改在Visual Studio中使用的C语言版本:

  1. 打开你的项目。
  2. 右键点击项目名,选择 属性
  3. 在左侧导航窗格中,选择 配置属性–> 常规
  4. 查找与C语言标准相关的选项(C语言标准),并根据需要进行调整。

图 31. 项目属性当中的C语言标准项目属性当中的C语言标准

3. 修改启动快捷键

点击菜单栏中的**“工具 --> 选项”,打开设置选项卡。按照下图输入"调试.启动"**搜索找到该快捷键,然后即可进行修改。

图 32. 修改调试启动快捷键修改调试启动快捷键

默认的Debug调试启动快捷键是F5,我一般都会修改成F1。

同样的操作,搜索**“调试.开始执行不调试”**可以找到正常启动快捷键,然后也可以进行修改。

图 33. 修改正常启动快捷键修改正常启动快捷键

默认的正常不调试启动快捷键是Ctrl + F5,我一般都会修改成Ctrl + F1,但这个快捷键基本不会使用,改不改都不太所谓。

如果你想修改VS的其它快捷键,也可以仿照该案例去完成。

4. 选择启动项目的插件

在使用VS编写C代码的过程中,毫无疑问需要经常创建多项目解决方案,此时频繁手动切换启动项目是比较麻烦的。所以推荐一个可视化选择启动项目的插件:

SwitchStartupProject

大家可以在"扩展–管理扩展"的"联机市场"中搜索此插件安装,然后重启VS即可。

安装成功后,主界面菜单栏下就会多一个下拉框用于选择当前启动项目,这个插件还是比较方便的,推荐安装。

图 34. 选择启动项目-插件选择启动项目-插件

注:此插件偶尔会有bug无法选择启动项目,此时重启解决方案即可解决。

5. VS的一些快捷键

VS常用快捷键:

Ctrl + L: 快速删除当前行

Ctrl + D: 快速复制当前行到下一行

Ctrl + 空格: 强制显示代码提示

Ctrl + Alt + L: 打开解决方案资源管理器。

Ctrl + K + D(按住Ctrl后再按K和D两个键位): 标准格式排版整个文件中的代码

Ctrl + Shift + /:快速注释以及释放注释。

6. 配置代码模板(建议做)

如果每次新建项目时,都选择"空项目"或者"控制台应用",那么接下来就需要自己动手新建一个".c"文件编写代码,这是比较麻烦的。所以建议大家配置一个代码模板,这样便于大家快速创建一个C程序骨架。

按照以下流程走:

1.创建一个标准的C项目

  1. 打开Visual Studio
  2. 新建一个C++"控制台应用"项目。
  3. 在解决方案资源管理器中,删除所有默认生成的.cpp文件。
  4. 添加一个新的.c文件,命名为main.c
  5. main.c文件中,输入你想要的默认内容。

这里推荐一个"main.c"文件的代码内容:

代码块 3. 代码模板-推荐内容

1

#define _CRT_SECURE_NO_WARNINGS

2

#include <stdio.h>

3


4

/**********************************************************************

5

 *                          COMMENT                                   *

6

 **********************************************************************/

7


8

int main(void) {

9

  printf("hello world!\n");

10


11

  return 0;

12

}

其中:

  1. “#define _CRT_SECURE_NO_WARNINGS” 是微软的MSVC平台下特有的宏定义,用于禁用运行时编译警告。
  2. "#include <stdio.h>"包含头文件,这样就可以使用"printf"等函数。

导出项目为模板

  1. 在VS的文件菜单上选择“项目 --> 导出模板”。
  2. 选择“项目模板”,然后点击下一步。
  3. 输入模板的名称、描述等相关信息,然后点击完成。(注意模板的名称必须是英文的,不能用中文)
  4. 记住你输入的模板的名字,方便后续创建项目时使用。

使用新模板创建项目

  1. 当你下次新建一个项目时,你可以在模板中下拉找到你创建的项目模板。
  2. 选择你刚才保存的模板,输入你的项目名,并创建。
  3. 这个新项目会自动生成一个main.c文件,内容和你在模板中设置的完全相同。

你还可以将你的模板固定在项目创建的左页面,比如下图:

图 35. 固定项目模板到页面固定项目模板到页面

这样下一次你就可以更快的找到你创建的模板了。

以上,就完成了VS项目模板的配置和使用。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

找不到mfc110u.dll,是什么原因,五种找不到mfc110u.dll,的解决方法

在日常使用电脑的过程中&#xff0c;我们可能会遇到一些错误提示&#xff0c;其中之一就是“mfc110u.dll丢失”。那么&#xff0c;什么是mfc110u.dll文件&#xff1f;为什么会出现丢失的情况&#xff1f;本文将为您详细介绍mfc110u.dll文件的作用、丢失原因以及提供5种解决方法…

概率论基础知识补充

概率论基础知识 样本概率&#xff1a;P(x)表示样本x出现的概率&#xff0c;也就是在全体样本中出现的概率先验概率&#xff1a;对于多类问题&#xff0c;类别状态 ω i \omega_i ωi​出现的概率, P ( ω i ) P{\left(\omega_i\right)} P(ωi​)条件概率&#xff1a;在类别 ω…

关于图像分类任务中划分数据集,并且生成分类类别的josn字典文件

1. 前言 在做图像分类任务的时候&#xff0c;数据格式是文件夹格式&#xff0c;相同文件夹下存放同一类型的类别 不少网上的数据&#xff0c;没有划分数据集&#xff0c;虽然代码简单&#xff0c;每次重新编写还是颇为麻烦&#xff0c;这里记录一下 如下&#xff0c;有的数据…

win10关闭打开文件安全警告

1.使用场景 在流水线上&#xff0c;因车间刷软件的程序不能下发到每一台电脑上&#xff0c;会使用共享文件夹的形式来共享程序。每次打开会弹出一下窗口&#xff0c;影响员工生产。 需要将安全警告关闭。2.解决步骤 1.winR键打开运行窗口&#xff0c;输入gpedit.msc&#xff…

vue3 的内置组件汇总

官方给出的说明&#xff1a; Fragment: Vue 3 组件不再要求有一个唯一的根节点&#xff0c;清除了很多无用的占位 div。Teleport: 允许组件渲染在别的元素内&#xff0c;主要开发弹窗组件的时候特别有用。Suspense: 异步组件&#xff0c;更方便开发有异步请求的组件。 一、fr…

django学习:页面渲染与请求和响应

1.请求过程 2.页面渲染 在app中新建一个目录&#xff08;Directory&#xff09;&#xff0c;文件名命名为templates。该文件名命名是固定的&#xff0c;不可命名出错&#xff0c;如若后续步骤出错&#xff0c;该目录文件名是一个检查的重点项目。在该目录下新建一个html文件&a…

软件测试|全面解析Docker Start/Stop/Restart命令:管理容器生命周期的必备工具

简介 Docker是一种流行的容器化平台&#xff0c;用于构建、分发和运行应用程序。在使用Docker时&#xff0c;经常需要管理容器的生命周期&#xff0c;包括启动、停止和重启容器。本文将详细介绍Docker中的docker start、docker stop和docker restart命令&#xff0c;帮助您全面…

通过cpolar在公网访问本地网站

通过cpolar可以轻松将本地网址映射到公网进行访问&#xff0c;下面简要介绍一下实现步骤。 目录 一、cpolar下载 二、安装 三、使用 3.1 登录 3.2 创建隧道 一、cpolar下载 cpolar官网地址&#xff1a;cpolar - secure introspectable tunnels to localhost 通过QQ邮箱…

视频剪辑实战:如何批量嵌套合并视频,提高剪辑效率必备技巧

在视频剪辑工作中&#xff0c;经常要处理大量的视频片段。要提高工作效率&#xff0c;批量嵌套合并视频成为了一项必备技巧。现在一起看看云炫AI智剪如何使用一些实用的技巧&#xff0c;快速、准确地完成批量嵌套合并视频的任务。 合并后的视频截图&#xff0c;由两段不同片段组…

Flutter+Go_Router+Fluent_Ui仿阿里网盘桌面软件开发跨平台实战-买就送仿小米app开发

Flutter是谷歌公司开发的一款开源、免费的UI框架&#xff0c;可以让我们快速的在Android和iOS上构建高质量App。它最大的特点就是跨平台、以及高性能。 目前 Flutter 已经支持 iOS、Android、Web、Windows、macOS、Linux 的跨平台开发。 Flutter官方介绍&#xff0c;目前Flutte…

Flutter3.X基础入门教程(2024完整版)

Flutter介绍&#xff1a; Flutter是谷歌公司开发的一款开源、免费的UI框架&#xff0c;可以让我们快速的在Android和iOS上构建高质量App。它最大的特点就是跨平台、以及高性能。 目前Flutter已经支持 iOS、Android、Web、Windows、macOS、Linux的跨平台开发。 教程所讲内容支持…

气动凝结水回收机组 浮球机械泵回收机组工作原理动画讲解介绍

​ 1&#xff1a;气动凝结水回收浮球机械泵介绍 气动凝结水回收是一种利用气动力转换产生负压的装置&#xff0c;可以将废气中的水分分离出来并回收利用。这种装置主要包含两个关键部件&#xff1a;气水分离器和气动运动控制阀。 气水分离器负责将进入回收装置的废气中的水分…

1、Excel工作场景和知识点总结

参考&#xff1a; 戴师兄–戴你玩转数据分析 Excel发挥战斗力的场景 地量级数据的存储 我们日常所用的各种数据表格&#xff0c;基本都以excel的.xlsx或者.xls格式进行存储。并且因为大家电脑上都有excel&#xff0c;这就使excel的通用性很高(我用excel做好一个表发给你&#x…

数据库-MySQL 启动方式

以管理员身份运行命令行 或者Shell net start //查看所有服务 net start MYSQL80 //启动服务 net stop MYSQL80 //停止服务完整安装MySQL社区版本的 会有这个 启动服务 停止服务 重启服务

游戏缺少x3daudio1_7.dll文件怎么办?x3daudio1_7.dll丢失总共有六个解决方法

导语&#xff1a;在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“x3daudio1_7.dll丢失”。那么&#xff0c;x3daudio1_7.dll到底是什么文件呢&#xff1f;它的作用和影响又是什么呢&#xff1f;本文将为您详细介绍x3daudio1_7.dll的相关知…

【Filament】基于物理的光照(PBR)

1 前言 自定义Blinn Phong光照模型中实现了基础的自定义光照&#xff0c;与现实的光照还是有些差别&#xff0c;本文将实现更逼真的光照效果&#xff0c;即基于物理的光照&#xff08;PBR&#xff09;。 读者如果对 Filament 不太熟悉&#xff0c;请回顾以下内容。 Filament环…

python豆瓣实例,抓取多页数据-应用到知识点:随时数,xpath,间隔请求sleep

源代码: <!DOCTYPE html> <html lang="zh-CN" class="ua-windows ua-webkit"> <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="renderer" content=&q…

Kettle Local引擎使用记录(基于Kettle web版数据集成开源工具data-integration源码)

Kettle Web &#x1f4da;第一章 前言&#x1f4da;第二章 demo源码&#x1f4d7;pom.xml引入Kettle引擎核心文件&#x1f4d7;java源码&#x1f4d5; controller&#x1f4d5; service&#x1f4d5; 其它&#x1f4d5; maven settings.xml &#x1f4d7;测试&#x1f4d5; 测试…

Linux下从sqlite3源码编译出sqlite3库及相关可执行程序

目录 1. 下载sqlite3源码并编译 2. 下载Tcl库并编译 3. 再次编译sqlite源码 1. 下载sqlite3源码并编译 打开SQLite Download Page&#xff0c;滚动到页面的下面&#xff0c;找到源码量最大的那个&#xff08;其它的估计也行&#xff0c;但源码最大的本人感觉功能最全&#…

Geoserver扩展发布MySQL视图功能

Geoserver中并不自带mysql数据发布功能&#xff0c;需要扩展外部插件。 1、示例以geoserver-2.20.5版本进行演示&#xff0c;所以MySQL插件需要到该版本对应的“Extensions”标题下查找&#xff0c;下载地址&#xff1a;GeoServer&#xff0c;详见下图 2、选择MySQL进入下载页…