- 博客(41)
- 收藏
- 关注
原创 哈希及其哈希思想的应用
哈希哈希的闭散列实现,哈希的开散列实现,unordered_set和unordered_map的模拟实现哈希的应用:1.位图 2.布隆过滤器
2023-06-19 22:07:19 434
原创 动态内存管理
1. 为什么存在动态内存分配我们已经掌握的内存开辟方式有:int val = 20;//在栈空间上开辟四个字节char arr[10] = { 0 };//在栈空间上开辟10个字节的连续空间但是上述的开辟空间的方式有两个特点:1. 空间开辟大小是固定的。2. 数组在申明的时候,必须指定数组的长度,它所需要的内存在编译时分配。但是对于空间的需求,不仅仅是上述的情况。有时候我们需要的空间大小在程序运行的时候才能知道,那数组的编译时开辟空间的方式就不能满足了。这时候就只能试试动态存开辟了。
2022-05-03 00:57:09 107
原创 深度剖析数据在内存中的存储(上)
1.数据类型介绍:char //字符数据类型short //短整型int //整形long //长整型long long //更长的整形float //单精度浮点数double //双精度浮点数1.1类型的基本归类:char char虽然是字符类型,但是字符类型存储的时候,存储的是字符的ASCII码值,ASCII值是整数unsigned charsigned charshortunsign...
2022-03-17 01:18:38 1403 2
原创 初识结构体
结构体初阶结构体类型的声明结构体初始化结构体成员访问结构体传参结构体的声明1.1 结构的基础知识 结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。1.2 结构的声明例如描述一个学生struct tag{ member - list;//成员链表}variable - list;//变量链表struct student{ char name[20];//名字 int age;//年龄...
2022-03-02 00:14:21 67 3
原创 初阶指针-_-
初阶指针指针是什么?指针是什么? 指针理解的2个要点: 1. 指针是内存中一个最小单元的编号,也就是地址 2. 平时口语中说的指针,通常指的是指针变量,是用来存放内存地址的变量。总结:指针就是地址,口语中说的指针通常指的是指针变量。如果我们电脑是32位虚拟地址空间/64位虚拟地址空间CPU-32位地址-地址线传输->内存/ CPU-32位地址-地址线传输->内存Int a=10;Int *p=&a;则会在内存上开辟四个字节大小的空间(int是整型占四个字节)
2022-02-21 17:21:11 597 2
原创 三子棋游戏的实现
三子棋游戏:首先先看看源码,下面是关于整个游戏的一些讲解先是主函数首先建立好一个.c文件用来放主函数,这里的while里面放入input,选择正好设计成1/0当0的时候while正好结束,1的时候可以持续循环;利用dowhile写一个界面函数#include<stdio.h>void meau(){ printf("*****************************\n"); printf("********** 1.play **...
2022-02-16 15:20:50 2194 2
原创 函数递归的习题
//根据下面递归函数:调用函数Fun(2),返回值是多少( )int Fun(int n) { if(n==5) return 2; else return 2*Fun(n+1); }Fun(2)--->返回16 return 2*Fun(3) 2*8=16 |__Fun(3):8 return 2*Fun(4) 2*4=8 |__Fun(4):.
2022-02-13 19:06:29 1012
原创 浅谈函数(下)
浅谈函数(下)6. 函数的声明和定义6.1 函数声明: 1. 告诉编译器有一个函数叫什么,参数是什么,返回类型是什么。但是具体是不是存在,函数 声明决定不了。2. 函数的声明一般出现在函数的使用之前。要满足先声明后使用。3. 函数的声明一般要放在头文件中的。这里说add未定义为什么说add未定义,这里我们就牵扯到代码的编译例如这个test.c的文件到最后如何变成test.exe文件,中间要进行两个过程,先编译(从前往后一一扫描代码)但是这个代码中,从上到下扫描,扫到add的时
2022-02-11 19:27:32 334
原创 浅谈函数(上)
浅谈函数(上)函数是什么? 数学中我们常见到函数的概念。但是你了解C语言中的函数吗?维基百科中对函数的定义:子程序 在计算机科学中,子程序(英语:Subroutine, procedure, function, routine, method, subprogram, callable unit),是一个大型程序中的某部分代码, 由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代码,具备相对的独立性。 一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软件库。
2022-02-09 18:05:27 341 2
原创 关于循环的部分算法常见习题及分析
#include<stdio.h>//1>计算n的阶乘int main(){ int i = 0; int n = 0; scanf("%d", &n); int mut = 1; for (i = 1; i <= n; i++)//产生1——n个数 { mut = mut*i; } printf("%d", mut); return ...
2022-01-24 10:57:02 754 1
原创 初识c语言的一些常见习题的算法以及简单分析
#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>写代码将三个整数数按从大到小输出。例如:输入:2 3 1输出:3 2 1int main(){ int x = 2; int y = 3; int z = 1; if (x < y) { int temp = x; x = y; y = temp; } if ...
2022-01-21 22:28:20 235
原创 浅谈指针(入门)
浅谈指针内存是电脑上特别重要的存储器,计算机中程序的运行都是在内存中进行的 。所以为了有效的使用内存,就把内存划分成一个个小的内存单元,每个内存单元的大小是1个字节。为了能够有效的访问到内存的每个单元,就给内存单元进行了编号,这些编号被称为该内存单元的地址假设这就是一块内存空间。下面小的格子被称为内存单元->编号(地址)虚拟地址CPU会直接生成虚拟地址->直接经过地址线的传递->电信号(它其实就是我们的地址)...
2022-01-13 17:56:09 276 4
原创 git和gitee的一些常见问题和基础操作方法
Git是什么?Git—分布式的版本管理工具Gitee/github代码托管网站(使用的背景,比如有一个研发团队开发了一个月,在开发的过程中有没有能清楚自己在每一天所写的代码?没有人。)这时候就出现了 svn/git这样的一些版本管理工具。比如这是我们所写的代码,我们把他放入我们的代码仓库无论是第一次的提交还是后面的修改的提交,这里都能查到记录Linux内核-李纳斯内核代码开源了。程序员设计的有价值的代码也要是开源的,完了去添加到linux内核。这些代码..
2022-01-11 23:54:05 1049 4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人