- 博客(24)
- 收藏
- 关注
原创 C语言--初始C语言(2)
被const修饰具有常属性,不能被修改,但本质还是变量。1)局部变量:进入作用域生命周期开始,出作用域结束。“hello”由双引号引起来的一串字符。字符串的结束标志是\0(转义字符)。1)局部变量:变量所在的局部范围。3)#define定义的标识符常量。取消注释:ctrl+ k + u。计算字符串长度,\0不算。2)const修饰的常变量。注释:ctrl+ k +c。2)全局变量:整个工程。2)全局变量:整个程序。
2024-08-23 21:11:04
299
原创 C语言--初始C语言(1)
一种任何计算机交流的计算机语言,广泛应用于底层开发。主流编译器:Clang(苹果) 、 GCC(linux) 、WIN-TC SUBLIME 、MSVC(VS)、Turbo C计算机语言发展:二进制-->汇编-->b语言-->c语言。
2024-04-14 22:56:47
267
原创 力扣-面试经典150题(移除元素)
你不需要考虑数组中超出新长度后面的元素。例如,函数返回的新长度为 2 ,而 nums = [2,2,3,3] 或 nums = [2,2,0,0],也会被视作正确答案。nums 中的前五个元素为 0,1,3,0,4。你不需要考虑数组中超出新长度后面的元素。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。// 根据你的函数返回的长度, 它会打印出数组中。// 在函数里修改输入数组对于调用者是可见的。的元素,并返回移除后数组的新长度。
2024-02-19 19:03:47
333
转载 力扣-面试经典150题(合并两个有序数组)
注意,因为 m = 0 ,所以 nums1 中没有元素。nums1 中仅存的 0 仅仅是为了确保合并结果可以顺利存放到 nums1 中。,5,6] ,其中斜体加粗标注的为 nums1 中的元素。最终,合并后数组不应由函数返回,而是存储在数组。需要合并 [1,2,3] 和 [2,5,6]。需要合并的数组是 [] 和 [1]。个元素表示应合并的元素,后。需要合并 [1] 和 []。中,使合并后的数组同样按。合并结果是 [1]。合并结果是 [1]。
2024-02-17 21:15:44
377
1
原创 多线程(二)
run方法,只是单纯的描述了该线程要执行的内容。(会在start创建好县城之后自动被调用)2.当线程内部在sleep的时候,主线程修改变量,新线程内部不能及时响应。让一个线程等待另一个线程执行结束,再继续执行。(控制线程结束的顺序)start方法内部,会调用到系统api,来在系统中创建出线程。主线程中调用t.join(),此时是主线程等待t线程先结束。让一个线程停止运行(销毁),让run方法尽快执行结束。在代码中手动创建出标志位,来作为run执行结束的条件。1.需要手动创建变量。join实现线程等待。
2024-02-17 14:44:39
323
1
原创 linux
linux不仅应用在服务器领域,还应用于嵌入式移动端设备。严格来说,linux不是一个操作系统,而是一个操作系统内核。操作系统=内核+配套的应用程序。
2024-01-27 13:47:31
1006
原创 软件测试(二)--基础
测试项目:名称,仓库地址,直接人员,测试用例链接,bug,产品规格说明书,技术文档...测试计划:计划项目由谁做,什么时候开始/结束测试,什么时候上线。需求分析-测试计划-设计测试,测试开发-执行测试-测试评估。测试开发:开发可以支持测试,提高测试效率的测试工具。测试执行:执行测试用例,发现bug,验收bug。项目相关人:测试领导,研发领导,产品领导。需求分析:判断用户的需求是否合理。项目直接相关人:开发,产品。测试设计:设计测试用例。测试评估:产出测试报告。
2023-12-08 18:39:34
310
原创 软件测试(一)--概念
验证软件是否符合用户需求,是一个过程,测试对象是软件。测试方法:黑盒测试,白盒测试,ui测试,接口测试,性能测试...
2023-12-08 17:56:02
1348
1
原创 多线程(一)
把t.start改成t.run,此时,代码中不会创建新的线程。这个主线程里面只能一次执行循环,执行完一个在执行另一个。使用runna的写法,和直接继承Thread之间的区别,主要是解耦合。在jconsole可以看到一个java进程,即使是最简单的,也包含了很多线程。两处while(true),这两处while同时执行,看到的结果是交替打印。在循环体里加入sleep,是Thread的静态方法(类方法)每个线程,都是一个独立执行的逻辑。3.继承Thread,重写run,使用匿名内部类。创建线程,其他的写法。
2023-11-26 18:37:44
530
1
原创 计算机是怎样工作的
进程从cpu离开之前,需要保存现场,把当前cpu中各种寄存器的状态,都记录到内存中,等到下次进程回到cpu上执行,可以把保存的这些寄存器的值,恢复回去。每一个线程,也有自己的状态,优先级,上下文,记账信息...一个进程使用pcb表示,一个进程可能使用一个pcb表示,也可能使用多个pcb表示。一个cpu核心上,通过快速轮转调度的方式,执行多个进程,宏观上是“同时执行”,微观上是有先有后,这个情况称为“并发”。创建,销毁,调度更快。2.进程和线程都是用来实现并发编程常见的,但线程比进程更轻量,更高效。
2023-11-12 23:39:08
40
1
原创 数据库(十)
union允许把两个不同的表,查询结果合并到一起。1.占用更多的空间,生成索引,需要一系列的数据结构,以及一系列的额外数据,来储存在硬盘空间。一个索引是针对一个列进行指定的,只针对这一列进行条件查询,查询速度才能够被索引优化。索引是针对查询操作引入的优化手段,加快查询速度,避免针对表进行遍历。实际开发中,查询(读)的频率,比插入删除查找(写)的频率高很多。手动创建的索引,可以手动删除。自动创建的索引,不能删除。主键,外键,unique 都只会自动生成索引的。索引是通过一定的数据结构来实现的。
2023-09-15 16:28:29
36
1
原创 数据库(九)
分组查询1.group by针对指定的列进行分组,把这一列中,相同的行,分到一组中,得到若干组。针对这些组,分别使用聚合函数。如果针对分组之后,不使用聚合函数,此时的结果查询出每一组的某个代表数据。不搭配聚合函数使用,往往没有意义。1)查询每个岗位的平均工资,排除张三2)查询平均薪资,排除平均薪资超过2w的结果3)查询 每个岗位的平均工资,排除张三,排除平均薪资超过2w的结果。
2023-09-09 20:27:19
37
1
原创 数据库(八)
如果转成,就可进行运算。1.select chinese+english 把对应的列相加,得到一个临时表。student的classid要出自于class的classid。指定外键约束时,要求父表中被关联的这一列,是主键或者unique。注释:-- (后面要有空格),也支持#开头做注释。指定列存在null,遇到null不算数。count与()之间不能有空格!2.把这临时表的结果进行行和行的相加。表达式查询,针对列和列之间进行运算。对于指定具体列,可以进行去重。删除:需先删子表,后删父表。
2023-08-11 19:19:40
28
1
原创 数据库(七)
一行记录的身份标识,一张表只能有一个primary key。一个表里的记录,只能有一个作为身份标识的数据。数据库,自动对数据的合法性进行校验检查,保证数据库中能够避免被插入/修改一些非法的数据。unique约束,会让后续插入数据/修改数据时,都先触发一次查询操作。可以同多default约束,来修改默认值。主键只能有一个,但是主键不一定只有一个列,也可以有多个列共同构成一个主键。对于带有主键的表来说,每次插入/修改数据,也会涉及到先进行查询的操作。后续插入数据是,default在没有显示指定插入的值时生效。
2023-08-03 21:57:03
30
原创 数据库(六)
与drop table 不一样,drop table删除了表以及表里的数据。delete知识删除了表里的记录,表还在(空表)。set 列=值,列=值....不带任何条件,就是删除整张表。(查询总成绩后三名)
2023-08-03 14:22:47
29
原创 数据库(五)
数据库表操作1)创建表create table 表名(列名 类型,列名 类型...);2)查看表中所有数据3)查看表的结构desc 表名;4)删除表drop table 表名;新增 :insert into 表名 values (值,值...);指定列插入 :insert into 表名(列名,列名...) values (值,值...);一次插入多行记录: insert into 表名 values (值,值..),(值,值...)...;
2023-08-02 19:49:17
37
原创 MySQL数据库(四)
增删改查(CRUD)新增insert into 表名 values(值,值...)insert into student values(1,'zhangsan');指定列插入insert into 表名(列名,列名..) values (值,值...)此处指插入name,id这一列就会被填充为默认值(null)。insert into student (name) values ('lisi');一次插入多行记录insert into 表名 values(值,值.
2023-07-29 14:54:34
34
原创 MySQL数据库(三)
一个表,包含很多行,每一行也成为一条记录。一般很少会在数据库某一列中,存储特别大的数据(几十M,几百M),会影响增删改查的效率。如果一定要让表名/列名和关键字一样,可以使用反引号`把列名表名引起来(键盘左上角,esc下面,tab上面,1的左边;int:是四个字节,此处(11)表示的是显示的宽度。显示这个int类型的时候,最多占据11个字符的宽度。create table 表名(列名 类型,列名 类型..);列名在前,类型在后!NULL:控制,表示这个格子是没填的。删除表的同时,也会把表中数据一起删除。
2023-07-29 13:09:37
27
原创 JAVA(一)
HelloWord.java-------------->HelloWord.class------------>java程序运行。字节码文件(.class),一个类对应一个字节码文件。1.一个Java文件只能有一个public类 public class HelloWorld-->类名。2.块注释/* */ ctrl+shift+/(既可以注释,也可以取消)3.文档注释 类的开始或方法的开始/** */static:关键字 静态的。idea 集成开发程序。
2023-07-28 16:43:27
36
1
原创 请输入文章标题
把多个unicode编码的字符放到一起,构成一个新的字符串,可能会混乱,无法区分字符和字符串的边界。(1)CPU:电脑最核心部分,中央处理器(2)主板(3)内存(4)硬盘(5)散热器(6)电源(7)机箱(8)显卡(9)显示器,键盘,鼠标 外设..主要使用utf8作为编码方式(变长编码),不仅支持中文,还支持任何一种语言。最早的电脑:(1)CPU(2)存储器(内存+硬盘)(3)输入设备(4)输出设备。手机内存,如128G,256G实际硬盘。不同的字符集,不同的编码方式下,一个汉字占几个字节是不同的。
2023-07-26 17:19:16
32
1
原创 MySQL数据库(一)
关系型数据库:使用“表”结构组织数据,对数据格式要求高。一个服务器往往要给很多客户端提供服务,真正的服务器,往往要7*24先试试运行。非关系型数据库:更灵活,会使用“文档”:键值对“结构组织数据。服务端(Server):被动接受请求的一方(通过网络进行通信)也有少数数据库是使用内存的,追求速度最大化(redis)服务器给客户端返回的数据,成为响应(Response)客户端给服务器发起的数据,成为请求(Request)数据库存储数据,希望存储的数据量比较大,持久化存储。2.MySQL 开源、免费。
2023-07-26 17:12:21
39
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人