C语言——1.入门须知

news2024/9/20 18:35:02

文章目录

  • 1.C语言的简要概述
    • 1.1.C语言类比自然语言
    • 1.2.计算机语言的发展
    • 1.3.C语言在当今的地位
    • 1.4.C语言的优势和劣势
      • 1.4.1.C语言的优势
      • 1.4.2.C语言的劣势
  • 2.C语言的应用场景
  • 3.C语言的学习路径
    • 3.1.学习目的
    • 3.2.学习路径
    • 3.3.学习资源
      • 3.3.1.推荐书籍
      • 3.3.2.推荐课程
      • 3.3.3.推荐题库
    • 3.4.学习方法
      • 3.4.1.多敲写代码
      • 3.4.2.多撰写博客
      • 3.4.3.多推送代码
  • 4.C语言的各大标准
    • 4.1.“C标”的概念
    • 4.2.“C标”的分类
  • 5.C语言的代码结构
    • 5.1.程序文件结构
    • 5.2.程序内容结构
      • 5.2.1.主函数main()
      • 5.2.2.打印函数printf()和标准头文件stdio.h
    • 5.2.3.返回值return 0
  • **6.C代码的编译运行**
    • 6.1.Windows下的编译运行
    • 6.2.Linux下的编译运行
    • 6.3.MacOS下的编译运行

前要:先说在前头,由于对于初学者来说,很多知识模块都是缺失的,因此很多术语看不懂是很正常的(请您不要放弃)。在今后的C系列文章里,我会尽可能简化、形象化我的表述语言,并且给出一些资源链接和资源推荐。

概要:本节主要是一些对C语言的先导认知,不会讲解太深入,并且如果有些词语令您费解,那么您可以选择跳过,以后再来查看。

本文最重要的地方就是有关编译器软件Visual stdio 2022的下载。这类似写小说时需要使用的office word软件,写代码也需要使用一些软件。

1.C语言的简要概述

1.1.C语言类比自然语言

平时我们说的语言(汉语、英语…)就是人与人之间的交流语言,而编程语言就是人与计算机的交流语言。C语言就是众多编程语言中的一种(其他流行语言:pythonJavaC++C#GoJS

1.2.计算机语言的发展

而计算机语言不是凭空出现的,是有一定的发展阶段的:

  1. 一开始程序员都是直接使用二进制,并且需要查询手册,使用打孔机将孔打在纸条上,有孔和没孔代表1/0两种状态,然后交给计算机处理计算

  2. 二进制使用起来过于繁琐,需要记忆不同的指令或者反复查找指令手册。

    而后来使用的汇编语言,是由一个个助记符构成的,比如说:想实现加法运算,假设加法指令的二进制代码是01011,这个时候给二进制01011命名为Add的加法指令,于是输入Add就就可以实现指令01011,其中Add就是一个助记符

  3. 后面诞生了BCPL语言、B语言,最终演化到了C语言的诞生(在当时,对比二进制输入和汇编语言,C语言是极其方便的语言)

  4. 然后就开始出现了其他语言的发展,例如:JavaC++Python

1.3.C语言在当今的地位

那么是否有必要学习C语言呢?C语言于1978年问世(已经是属于比较早远的语言了),可以从图中看出,即使过了这么久C语言仍然是程序员们热门的语言之一,常年占据前几名的位置,干掉了不少的语言。

在这里插入图片描述

补充:以上数据截止于20231014日,来源TIOBE指数 - TIOBE(TIOBE编程社区指数是编程普及程度的指标语言,该指数每月更新一次)。

从使用规模上来看,C还是值得我们学习的,尽管它属于比较古老的编程语言,但是学习C的过程,会帮助我们更深入学习其他计算机知识。

1.4.C语言的优势和劣势

1.4.1.C语言的优势

下面的优势您可能现在还感觉不出来,您姑且一看即可,以后再来慢慢了解。

  1. 设计特性:其模块化设计和结构化编程的特点,使得写出的程序易懂易读(这是对比汇编语言而言的)。
  2. 高效性:由于C是偏向计算机底层的语言(用C可以很直接操控某些硬件),可以充分利用计算机的优势,具有汇编语言的微调控制能力,可以更高效使用内存、运行速度很快(对比其他语言)。
  3. 可移植性:可移植性是难得的特性,C出名原因之一就有这一点,您编写出来的同一份标准C代码在稍作修改甚至不修改的情况下,可以运行在其他机器上。不过需要注意的是,在某些硬件设备,例如:显示监视器或操作系统特殊功能编写的部分,通常是不可移植的。
  4. 强大且灵活,我曾在CoolShell上看到一句很酷的话:“C语言不用多说,现今这个世界上几乎所有重要的软件都跟C有直接和间接的关系,操作系统、网络、硬件驱动等等。说得霸气一点儿,这个世界就是在C语言之上运行的”。
  5. 面向程序员:C语言满足程序员的需求,程序员可以利用C方便地访问硬件、操作内存中的位。并且C的类型检查不像C++那么严格,这样做的好处是很多任务采用C都十分简洁(坏处是容易犯错)。
  6. 库函数:包含众多程序员基础使用的C函数(但是没有直接的数据解构结构)。

1.4.2.C语言的劣势

实际上C语言的很多好处都有可能转化为坏处。

  1. C太过于自由,太信任程序员,这点在指针的使用上尤为突出,使用指针时,稍不注意就会导致程序崩溃,程序员需要对自己的C代码负责(这也提醒您,在后续学习中,遇到的第一个难点很可能就是指针)。
  2. C语言紧凑且简洁,有大量的运行,因此有可能写出令人费解的代码,甚至有“国际C语言混淆代码大赛(IOCCC)”的存在,这是只有C语言才独有的大赛。

2.C语言的应用场景

  1. 撰写操作系统:小型计算机(例如:UNIX系统,类似于Windows系统,也是一种电脑操作系统)、个人计算机、大型计算机等。
  2. 嵌入式开发:这些系统通常被嵌入到其他设备中(例如:智能手表、飞机、导弹、照相机等)C语言在单片机开发,嵌入式开发用的特别多,近几年物联网又让C语言掀起热潮!
  3. C还有一些应用场景,感兴趣的话您也可以查找一下其他相关知识。

补充:关于计算机的硬件知识,我觉得您有必要了解一下,您至少需要知道一点基础的计算机硬件知识,这对未来计算机技术的学习特别是对C语言的学习有很大的帮助。您可以看看我的另外一篇文章:《简明计算机运行结构》。

3.C语言的学习路径

相信在前面的铺垫下,您对C有了一个初步的了解,因此有必要谈及未来学习C的道路和方法。

3.1.学习目的

  1. 完整了解C语言的语法和规则
  2. 数量使用C语言的语法和规则,形成一定的编程思维,可以使用C写出一些符合要求的基本算法
  3. 借助C来理解很多计算机相关的概念

3.2.学习路径

C好歹应该了解需要学什么板块吧?可以看看这份思维导图:C语言思维导图,看完这份思维导图可以明确C语言的大概路径。

3.3.学习资源

3.3.1.推荐书籍

  1. 首推《C primer plus》。好处很多:全面、真的很全面,几乎涵盖了C89C99的所有C语言基本特性,有非常深入的解析,还有大量的代码例子

    不过坏处也很明显:很厚,一个新手很容易半途而废,看完这本书至少需要3个月(但是会随着对C的熟练越看越快,我自己都看了3遍,每次都很有收获)。

  2. 《明解C语言 入门篇(第三版)》这本书的作者是一个日本人,该书在日本广受欢迎,是本不错的入门书,比上面那本书要容易读一些。

3.3.2.推荐课程

首推鹏哥C语言:C语言程序设计从入门到进阶,这个教程真的秒杀市面上很多基础教程,懂得灵活用C是高手,但是会教会别人C更是高手中的高手,鹏哥完全可以胜任这份工作,这份视频也是我的第一份入门视频。

3.3.3.推荐题库

在学习C语言的过程中,最重要的是实践,也就是上机编写代码,这里推荐几个题库平台:牛客网、力扣、PTA。

这些题库很不错,都有大量的题库,不过新手推荐在有一定的C语言基础上刷下面这几个题单:

  1. 牛客网基础语法篇
  2. PTA基础编程题目
  3. PTA程序设计练习集

3.4.学习方法

3.4.1.多敲写代码

多多敲代码,不要嫌弃繁琐的敲键盘过程!

3.4.2.多撰写博客

在其他方面,我推荐您在CSDN上撰写自己的学习经历,就像我自己写的博文那样,写博文的意义有以下几个:

  1. 与他人分享知识
  2. 整理、理清自己的学习思路,更好掌握知识
  3. 方便以后自己修改复习使用
  4. 面试是一个加分选项,有博客的人和没博客的人在面试的时候是两个档次的

3.4.3.多推送代码

我推荐注册一个Gitee账户,并且在Gitee平台上推送自己的代码作为记录,这点在面试的时候也是加分项,相关的注册和使用可以看这个视频:Gitee(码云)的注册和代码提交。

对于一名“普通”在校大学生的建议节奏就是:以“上网课为主线,看书刷题为副线,博客为顺便”最好(当然,要根据实际情况)。

补充1:上面这些我写得比较简短,您还可以看一下bilibili上的这一段直播录播,里面会更加详细一些:零基础如何学好C语言?。

补充2:还有一篇2018年的文章也值得一看程序员练级攻略(2018) 作者是陈皓老师,今年(2023年)因心梗去世没多久。除了这一篇文章,还写了另外一个专栏,不过那个专栏在“极客时间”平台里,是收费的(不过价格还行,内容也不错,值得买来一看)

4.C语言的各大标准

4.1.“C标”的概念

一门语言需要被其他人拿去沟通,就必须拥有规则的语法体系,例如:汉语中形容词可以修饰一个名词,这是汉语的语法规则。不同语言可能会有相同的规则,也有可能会有不相同的规则。同理,要想要和计算机正常交流,就必须学好C的语法,也就是“C标准”。

C语言在一开始没有标准这一说法,各个公司使用C语言时都采用了不同的标准,于是产生了语言歧义,这个时候就出现了一些关于使用C的标准。

C语言的标准”即“C标”,是一种编写代码的约定,“C标”让我们能够向计算机更加准确、规范表达我们的需求,一种编程语言的流行是需要一个标准的,否则很可能半途废掉。

4.2.“C标”的分类

C的标准有很多,常见的有:

  1. The C Programming LanguageC语言程序设计)》的第一版是公认的C标准,称为K&R C或“经典C”,该书的附录“C语言参考手册”是实现C的指导标准。但是这本书只是定义了什么是C语言,并没有定义C库,而C很依赖库,后来的UNIX实现提供的库逐渐变成了标准库(库就是函数库,里面存放了一些库函数,可以被直接调用,用来执行一些简短的任务)。
  2. 美国国家标准协会(ANSI)于1983年组建委员会(X3J11),在1989年公布了ANSI C标准。而国际标准化组织在1990年采用了这套标准,也叫“ISO C标准。因此“ANSI C”和“ISO C”实际上是完全相同的标准,“ANSI/ISO C”的最终版本也就是后来的“C89标准”或“C90标准”。
  3. C89(也叫ANSI C)、C90的后继标准还有:C95C99C11C17……未来也还有更加新的标准,这其实也侧面说明C还是非常流行的(因为仍在不断更新),但可惜只有C99之前的标准才更加流行。

这里需要注意,语言标准并不是越新就越好,新标准需要时间的沉淀!

不过其中仍有一些新的特性也值得我们学习,例如:柔性数组、变长数组等,这一部分我们以后再提及。

5.C语言的代码结构

首先让我们了解一下C语言这类编译型语言的使用步骤:

  1. 定义程序的目标
  2. 在纸上/脑中设计程序
  3. 在编译器内编写代码
  4. 编译和运行程序
  5. 测试和调试代码
  6. 维护和修改代码

这里只是提及一下,随着语言的深入,您会明白这些步骤的。

5.1.程序文件结构

要构成完整的C程序,首先需要有三个文件:

  1. 一个文件是“头文件(.h后缀的文件)”
  2. 另外两个文件是“源文件(.c后缀的文件)”

一般来说,头文件的内容是函数的声明,另外两个源文件的内容分别是函数的定义和main()所在的文件。

补充:什么是函数呢?在编程语言的函数和数学意义上的函数有些许不同,数学意义上的函数更多是一种输入数据和输出数据的关系,但是编程语言的函数不仅仅可以做到这一点,还可以完成一些额外的任务或者动作。

而一个函数需要被定义和声明,“定义”就是定义出函数具体要做的事情,“声明”就是提前告知编译器:“我要使用这个函数了,你注意一下”。

但是,我们先不纠结C程序的文件结构,我们在短时间内先只使用一个源文件来写C代码,这样更好入门,等我们学完函数后再来重新提及文件结构。

5.2.程序内容结构

我们先来讲讲单独一个源文件(.c后缀文件)内部怎么写C代码,我先给您一份实际的C代码,这份代码里暂时只有一个main()和一个printf()

//源文件内部
#include <stdio.h>//包含标准头文件
int main()//main函数是主函数,每一个C语言代码的入口都在这里
{
    printf("hello word\n");//向屏幕打印一串字符“hello word”,然后换行  
    return 0;//返回返回值为0 
}

注意:以后我们会在这个main()内加入其他的内容。

这都是什么意思呢?别急,下面会一一解释。

5.2.1.主函数main()

main()叫做作“主函数”,是整个程序的入口,在整个C程序中有且只能有一个。

无论C语言的代码有多少行,都必须要先从main()开始执行,我们看一份C代码的时候,可以选择从main()开始分析代码。

这里需要注意,mian函数有多种写法:

  1. 第一种:常见的写法(比较多,初学者只需要使用这种就可以)

    int main()
    {  
        /*这里写上其他的C代码*/
        return 0;
    } 
    
  2. 第二种:这种写法过于古老了,不建议使用,但是有的老教材可以看到这种写法

    void main()
    {  
        /*这里写上其他的C代码*/
        return 0; 
    }
    
  3. 第三种:也可以(目前很少写,以后在来讲解)

    int main(int argc, char* argv[], char* env[]) 
    {  
        /*这里写上其他的C代码*/
        return 0; 
    } 
    
  4. 第四种:如果这样写也可以

    int main(void)
    {  
        /*这里写上其他的C代码*/
        return 0; 
    }
    

5.2.2.打印函数printf()和标准头文件stdio.h

写一个C代码需要使用(或者叫“调用”)很多函数,而一个函数需要有函数声明(告知这个函数是什么,有什么样的参数)和函数定义(这个给函数的具体实现逻辑)才可以被我们使用/调用。

printf()C语言已经提前定义好的库函数(不需要我们自己实现),而标准头文件stdio.h则是标准库中的其中一个头文件,内部包含printf()的声明,在代码一开头中写入#include <某个头文件.h>,就是写入了printf()的声明。

printf()可以打印出括号内的内容到控制台上(就是一个黑色的小框框),后面运行代码的时候就可以看到。

类比:这里的include的使用就相当于:使用了别人的东西(标准头文件stdio.h),需要打个招呼(#include<stdio.h>),然后才能使用printf()

在未来我们会学习更多这样的库函数,使用这些库函数也都需要包含对应的头文件。

5.2.3.返回值return 0

简单来说:一个C代码运行成功后程序就会返回一个0值,实际上在C语言中很多函数都具有返回值,这个return 0实际上就是main()函数的返回值。

6.C代码的编译运行

通过 5.C语言的代码结构 我们得到了第一份C语言代码:

//源文件内部
#include <stdio.h>//包含标准头文件
int main()//main函数是主函数,每一个C语言代码的入口都在这里
{
    printf("hello word\n");//向屏幕打印一串字符“hello word”,然后换行  
    return 0;//返回返回值为0 
}

可是光有代码是不行的,我们要让代码跑起来呀!这就需要通过编译器编译C语言代码了。那么接下来我们怎么编译(也就是翻译成计算机能够识别的机器代码)这个C代码并且运行起来呢?

在不同操作系统上,不同的编译方法有很多。但是我们都需要一个编译器或者IDE软件(IDE集合了编辑器、编译器、链接器这些组件我们以后学习C语言的编译链接过程就能明白)

我们先来简单理解一下什么是编译器:C语言是给人看懂的,计算机只能读懂二进制。简单来讲,编译器可以把我们写的代码转化为二进制让电脑能够理解(编译器是一名优秀的翻译家,好的编译器能得到更好的翻译,让计算机更好的理解我们的需求,运行代码的效率就更快)

6.1.Windows下的编译运行

Windows下,常见的编译器软件有:MSVCGCCVisual stdio系列、code blocksClangSUBLIMEWIN-TCTurbo C等等。

需要注意的是,VS2022应该叫集成开发环境(缩写为IDE),是编辑器、编译器(例如:msvc)、调试器等组件的集合开发环境,一体式安装,即装即用,非常适合编程新手。

而最近这几年火的VSCode是个编辑器,不能独自进行编译,但是可以安装插件形成极具个性化的开发工具,但是配置环节能难倒很多编程新手,这里我们只是简单提及一下。

在我的文章系列,有关C/C++的代码编写和运行都是使用的Visual stdio 2022,偶尔使用VSCode或者gcc,因此我推荐您下载Visual stdio 2022,有关于Visual stdio 2022的安装和使用可以到我的另外一篇博文:《安装并使用VS》

补充:如果在使用VS2022的时候出现控制台一闪而过的问题(就是闪过一个黑色小框框),可以试试在 return 0; 的前面加上 getchar()函数。

6.2.Linux下的编译运行

Linux下编译代码一般使用gcc/g++编译器,这个我们无需理会。

我相信有很多编程新手的学习机器大都是Windows或者MacOS的电脑,因此如果您想深入了解的话,你必须懂得Linux命令行的操作,可以看看我的Linux博文系列《Linux系列》,然后再去了解使用gcc/g++编译器。

6.3.MacOS下的编译运行

由于我对MacOS并不太熟悉,您可以查询网络资料,若是以后我更换Mac机器了,我会再回来这里补充推荐。

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

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

相关文章

安全项目简介

安全项目 基线检查 密码 复杂度有效期 用户访问和身份验证 禁用administrator禁用guest认证失败锁定 安全防护软件操作系统安全配置 关闭自动播放 文件和目录权限端口限制安全审计… 等保测评 是否举办了安全意识培训是否有应急响应预案有无第一负责人 工作内容 测评准备…

Linux操作系统使用及C高级编程-D6-D8Linux shell脚本

利用shell命令写的脚本文件&#xff0c;后缀是.sh shell脚本是一个解释型语言&#xff0c;不需要编译&#xff0c;可直接执行 书写&#xff1a;vi test.sh #!/bin/bash&#xff1a;说明使用的是/bin目录下的bash 说明完后即可编写脚本文件 bash test.sh&#xff1a;运行文…

逻辑漏洞(越权)

逻辑漏洞&#xff08;越权&#xff09; 0x01 何为逻辑漏洞 逻辑漏洞是指&#xff0c;在编写程序的时&#xff0c;一个流程处理处理逻辑&#xff0c;不够谨慎或逻辑不完整&#xff0c;从而造成验证失效、敏感信息暴露等问题&#xff0c;这类问题很难利用工具去发现&#xff0c…

『亚马逊云科技产品测评』活动征文|基于next.js搭建一个企业官网

『亚马逊云科技产品测评』活动征文&#xff5c;基于next.js搭建一个企业官网 授权声明&#xff1a;本篇文章授权活动官方亚马逊云科技文章转发、改写权&#xff0c;包括不限于在 Developer Centre, 知乎&#xff0c;自媒体平台&#xff0c;第三方开发者媒体等亚马逊云科技官方…

UDP网络套接字编程

先来说说数据在网络上的传输过程吧&#xff0c;我们知道系统其实终究是根据冯诺依曼来构成的&#xff0c;而网络数据是怎么发的呢&#xff1f; 其实很简单&#xff0c;网络有五层。如下&#xff1a; 如上图&#xff0c;我们知道的是&#xff0c;每层对应的操作系统中的那些地方…

Attingo:西部数据部分SSD存在硬件设计制造缺陷

今年5月&#xff0c;西部数据SanDisk Extreme Pro硬盘陆续有用户反馈有故障发生&#xff0c;用户反馈最多的问题是数据丢失和硬件损坏。8月份&#xff0c;因为这个事情&#xff0c;还被爆出&#xff0c;西部数据面临用户的集体诉讼。 近期&#xff0c;有一个专门从事数据恢复的…

【赠书第6期】MATLAB科学计算从入门到精通

文章目录 前言 1 安装与配置 2 变量定义 3 数据处理 4 绘图 5 算法设计 6 程序调试 7 推荐图书 8 粉丝福利 前言 MATLAB 是一种高级的科学计算和数据可视化平台。它由 MathWorks 公司开发&#xff0c;是科学研究、数据分析和工程实践中非常常用的一种软件工具。本文将…

PC 477B西门子触摸屏维修6AV7853-0AE20-1AA0

西门子触摸屏维修故障有&#xff1a;上电黑屏, 花屏,暗屏,触摸失灵,按键损坏,电源板,高压板故障,液晶,主板坏等,内容错乱、进不了系统界面、无背光、背光暗、有背光无字符&#xff0c;上电无任何显示 &#xff0c;Power灯不亮但其他一切正常&#xff0c;双串口无法通讯 &#x…

力扣-414.第三大的数(两种解法)

文章目录 第三大的数解法一&#xff08;排序加遍历对比&#xff09;解法二&#xff08;遍历一遍加迭代&#xff09; 第三大的数 题目&#xff1a; 给你一个非空数组&#xff0c;返回此数组中第三大的数 。如果不存在&#xff0c;则返回数组中最大的数。 示例 1&#xff1a; 输…

【VRTK】【VR开发】【Unity】7-配置交互能力和向量追踪

【前情提要】 目前为止,我们虽然设定了手模型和动画,还能够正确根据输入触发动作,不过还未能与任何物体互动。要互动,需要给手部设定相应的Interactor能力。 【配置Interactor的抓取功能】 在Hierarchy中选中[VRTK_CAMERA_RIGS_SETUP] ➤ Camera Rigs, Tracked Alias ➤ …

基于SSM的高校毕业选题管理系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

【JavaEE初阶】 CSS相关属性,元素显示模式,盒模型,弹性布局,Chrome 调试工具||相关讲解

文章目录 &#x1f38b;字体属性&#x1f6a9;设置字体&#x1f6a9;字体大小&#x1f6a9;字体粗细&#x1f6a9;文字样式 &#x1f38d;文本属性&#x1f6a9;文本颜色&#x1f388;认识 RGB&#x1f388;设置文本颜色 &#x1f6a9;文本对齐&#x1f6a9;文本装饰&#x1f6…

牛掰的dd命令,cpi0配合find备份(不会主动备份),od查看

dd if设备1或文件 of设备2或文件 blocknsize countn 还原就是把设备1,2调过来 这里想到dump的还原是命令restore&#xff0c;想起来就写一下&#xff0c;省的总忘记 可以针对整块磁盘进行复制&#xff0c;对于新创建的分区&#xff0c;也不用格式化&#xff0c;可以直接…

进程管理(五)

处理器调度及多级调度 批量型往往先进入外存,再进入内存。终端型直接进入内存。 从磁盘选择若干作业,同时装入到内存,创建相应的进程,这是高级调度。 低级调度(进程调度):从进入内存的多道程序中选择一道把处理机给他 注意:时间片轮转是抢占式的 外设的调度统称为…

多态语法详解

多态语法详解 一&#xff1a;概念1&#xff1a;多态实现条件 二:重写&#xff1a;三&#xff1a;向上转型和向下转型1:向上转型&#xff1a;1&#xff1a;直接赋值&#xff1a;2&#xff1a;方法传参3&#xff1a;返回值 2:向下转型 一&#xff1a;概念 1&#xff1a;同一个引…

AIGC ChatGPT 4 将数据接口文件使用Python进行入库Mysql

数据分析,数据处理的过程,往往将采集到的数据,或者从生产库过来的接口文件,我们都需要进行入库操作。 如下图数据: 将这样的数据接口文件,进行入库,插入到Mysql数据库中。 用Python代码来完成。 ChatGPT4来完成代码输入。 ChatGPT4完整内容如下: 这个任务可以使用`…

趣学python编程 (五、常用IDE环境推荐)

Python环境指的是在计算机上安装Python解释器和相关的库&#xff0c;它是运行Python代码所必需的。那么开始Python编程前&#xff0c;准备安装好开发环境是前提。 默认的电脑上只是让人办公使用的&#xff0c;不带python编程开发环境。只有安装python环境&#xff0c;才可以编写…

Mistral 7B 比Llama 2更好的开源大模型 (四)

Mistral 7B在平衡高性能和保持大型语言模型高效的目标方面迈出了重要的一步。通过我们的工作,我们的目标是帮助社区创建更实惠、更高效、更高性能的语言模型,这些模型可以在广泛的现实世界应用程序中使用。 Mistral 7B在实践中,对于16K和W=4096的序列长度,对FlashAttentio…

Nosql之redis概述及基本操作

关系数据库与非关系型数据库概述 关系型数据库 关系型数据库是一个结构化的数据库&#xff0c;创建在关系模型&#xff08;二维表格模型&#xff09;基础上&#xff0c;一般面向于记录。SQL语句(标准数据查询语言)就是一种基于关系型数据库的语言&#xff0c;用于执行对关系型…