- 博客(36)
- 收藏
- 关注
原创 总结HashTable,HashMap,ConcurrentHashMap 之间的区别
总结HashTable,HashMap,ConcurrentHashMap 之间的区别
2022-09-26 15:52:53
164
原创 选择排序法
#include<stdio.h>//选择排序法:排序好的是前半部分,未排序的是后半部分int main(){ int n = 0; int arr[100] = { 0 }; scanf("%d ",&n); for (int i = 0; i < n; i++) { scanf("%d",&arr[i]); } int i = 0; int minj = 0; for (; i < n-1; i++) { minj = i;//.
2022-05-30 10:44:03
68
原创 插入排序法
#include<stdio.h>//插入排序法int main(){ int arr[100] = {0}; int n = 0; scanf("%d",&n); for (int i = 0; i < n; i++) { scanf("%d",&arr[i]); } int v = 0; int i = 0; for (i=1; i < n; i++)//遍历一遍数组,找到每次要插入的数 { v = arr[i]; int .
2022-05-30 09:49:46
58
原创 结构体创建,初始化,访问以及嵌套
一.结构体:首先为什么要用结构体,我们之前从数组可以知道,一个数组可以存放同一种类型的多个元素。而一个结构体可以存放不同类型的多个变量,例如,一个学生类型的结构体,里面有名字(char),年龄(int),身高(float)等等不同的结构体成员。示例1:结构体的创建struct student // struct是结构体关键字 student是结构体标签{ char name[10]; char sex[5]; int age;
2022-05-27 08:41:37
887
原创 函数栈帧的创建和销毁
一.什么是函数栈帧?函数栈帧:(stack frame)就是函数调用过程中在程序的调用栈(call stack)所开辟的空间,这些空间 是用来存放:1.函数参数和函数返回值。2.临时变量(包括函数的非静态的局部变量以及编译器自动生产的其他临时变量)。3.保存上下文信息(包括在函数调用前后需要保持不变的寄存器)。预备知识: 1.首先在解析之前,我们要知道栈的一些相关知识。栈(stack)是现代计算机程序里最为重要的概念之一,几乎每一个程序都使用了栈,没有栈就没有函数,...
2022-05-15 21:02:41
407
原创 关于if的相关问题
一* if条件语句的用法:if语句起执行判断和分支的作用if(条件表达式)//情况一{ 执行语句1;//花括号内放多条语句,满足条件就执行所有的语句。没有花括号只执行一条语句。 执行语句2;}if(条件表达式)//情况二{ 执行语句1; 执行语句2;}else//不满足条件表达式的其他条件{ 执行语句1;//花括号内放多条语句,满足条件就执行所有的语句。没有花括号只执行一条语句。 执行语句2;}if(条件表达式1)//情况三{ 执.
2022-05-15 10:48:02
618
原创 大小端存储和char类型的范围解释
一* 大小端存储:我们知道,数据在我们内存中存储,是先根据我们的变量类型(例如:int 整型),开辟一个新的空间去存储数据(例如:int就是开辟一个4个字节的空间,32个bit位)。这个时候,计算机再根据要赋予变量的字面值转换成二进制的补码,再将补码存入内存中开辟的新空间。问题来了:在我们将二进制补码存入内存开辟的空间时,内存中开辟的空间有高低地址之分(例如:int对应四个字节,32个bit位的空间,一端地址是低地址,依次递增,到另一端就是高地址),而我们的数据对于的二进制补码也会有字节的高权值
2022-05-14 11:16:54
662
原创 关于static关键字的注意事项
一.static修饰全局变量:1.修饰全局变量时:该变量只在本文件内访问,不能被外部文件直接访问。2.修饰全局变量时:该变量的作用域改变了,但是变量的生命周期不会改(从定义到结束时都不会被释放)例如:在test.c内创建一个static修饰的变量,在本文件内才可以使用该变量(作用域改变:从整个工程的作用域变成了本文件内部),并且此时生命周期还是全局生命周期(生命周期不变)。二.static修饰局部变量:修饰局部变量时:该变量作用域不变(还是在变量所在的代码块内起作用,即花括号{}内部),
2022-05-14 09:44:46
677
原创 signed和unsigned关键字修饰的整形在内存中的存储
我们知道创建一个变量是要在内存中开辟一个空间,而空间的大小是根据修饰的不同类型的变量决定的。那么数据在所开辟的内存到底是如何储存的呢例如:int a=10;再讲数据在内存中如何储存前,我们得先了解源码,反码,补码的知识。源码,反码,补码:对于一个signed int 有符号正数来说,其原码,反码,补码是相同的。而对于signed int有符号负数来说,原码符号位不变,其他位按位取反得到反码,反码加一得到补码。而对于unsigned int无符号数来说,其原码,反码补码也是相同的。这里初学者小伙伴或许
2022-05-13 14:27:38
508
原创 最近学习的一些新知识
一* 声明和定于的区别:1.声明可以很多次,但是定义一般只有一次2.声明不用在内存里重新开辟空间,但是定义会开辟新空间二*register寄存器:CPU主要是负责进行计算的硬件单元,但是为了方便运算,一般第一步需要先把数据从内存读取到CPU内,那 么也就需要CPU具有一定的数据临时存储能力。注意:CPU并不是当前要计算了,才把特定数据读到CPU里面,那样太慢了。 所以现代CPU内,都集成了一组叫做寄存器的硬件,用来做临时数据的保存。寄存器存在的本质:在硬件层面上,提高计算机的运算效率。因为不
2022-05-12 10:42:21
292
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人