
学习
文章平均质量分 67
极品小學生
求一款生发洗发膏
展开
-
线性表练习扑克牌游戏(炸金花)
我们需要先有个大概的框架进行起来才能更加高效有条理。要玩炸金花我们需要一副牌,有了牌我们需要将牌打乱,打乱了我们要发牌,好吧听起来很简单是不是突然感觉没那么难了确实是这样,不要急我们再来丰富一下细节,我们要一副牌就需要定义扑克牌是含有什么内容的,我们以哪种方式存放它?(看题目都知道肯定是线性表!!) 我们怎么洗牌呢,洗了牌怎么发牌???...原创 2022-06-13 18:49:13 · 1317 阅读 · 1 评论 -
BF算法(字符串查找)
BF(Brute Force)算法和它的名字一样,就是暴力!没有什么技巧性,就是一个个进行比较得出最后的结论,这个方法也是最通俗易懂的,后面一篇我有写KMP算法是对BF算法的极大优化包括对next数组的优化。学完这个BF算法看看你是否对KMP算法感兴趣,如果有兴趣可以学习下我的下一篇KMP算法原创 2022-06-01 16:57:58 · 1182 阅读 · 0 评论 -
用宏实现二进制奇偶位的交换
我们知道宏函数是不可以递归的,所以我们的想法不是把每一位的内容进行交换而是取出偶数位所有的内容和奇数位置的内容通过左右移动加上或运算实现我先把代码放在这里#define swapbit(n) (((n&0x55555555)<<1)|((n&0xaaaaaaaa)>>1))我们要想得到奇数位的内容就需要将n的偶数位置与0,奇数位置与1,而要得到偶数位就需要偶数位置与1,奇数位与0,所以要得到奇数位就需要与上01010101010101010101010原创 2022-04-24 10:21:44 · 163 阅读 · 0 评论 -
Random类和Math.random生成的随机数
Random这个类包含于(import java.util.Random;)Random random=new Random();Random产生随机数是伪随机数,产生的随机数是根据时间戳作为种子而产生一个32位的随机数所以范围是-2147483648~2147483647,如果每次的种子相同产生的随机数就是相同的,我们也可以主动设置种子,在new Randow(seed:num)填入num,也可以改变产生随机数的范围int num=random.nextInt();在()中间填入值,注原创 2022-04-24 10:20:24 · 715 阅读 · 0 评论 -
memset,calloc的区别
memset的作用是把ptr所指向内容中的前num个字节全部转换成val,作用在栈上一般用作初始化.calloc的作用是把大小为size的num个在堆上的内容全部转化成0,作用在堆上一般用于初始化。栈区存放里面的变量通常是局部变量、函数参数等,堆区存放动态分配内存的内容,静态区存放全局变量和静态变量。具体可以参考底部链接(14条消息) 内存中栈,堆,静态区到底有什么区别?_#include的博客-优快云博客_堆栈静态区的区别ahttps://bl...原创 2022-04-09 23:07:24 · 313 阅读 · 0 评论 -
结构体内存对齐,位段
结构体内存对其1.第一个成员在与结构体变量偏移量为0的地址处。 2. 其他成员变量要对齐到某个数字(对齐数)的整数倍的地址处。 对齐数 = 编译器默认的一个对齐数 与 该成员大小的较小值。 VS中默认的值为8 3. 结构体总大小为最大对齐数(每个成员变量都有一个对齐数)的整数倍。 4. 如果嵌套了结构体的情况,嵌套的结构体对齐到自己的最大对齐数的整数倍处,结构体的整 体大小就是所有最大对齐数(含嵌套结构体的对齐数)的整数倍。为什么存在内存对齐? 大部分的参考资料都是如是说的: 1. 平台原因...原创 2022-03-30 00:08:07 · 143 阅读 · 0 评论 -
memcpy和memmove的区别及实现
我们先上定义作用:将 num 字节的值从source所指向的位置复制到destination所指向的内存块。作用:将 num 字节的值从source所指向的位置复制到destination所指向的内存块。复制站的内容和使用中间缓冲区一样时,允许destination和source重叠。memmove和memcpy的差别就是memmove函数处理的源内存块和目标内存块是可以重叠的。 如果源空间和目标空间出现重叠,就得使用memmove函数处理。我们用图来解释:先用memcpy原创 2022-03-28 22:14:48 · 2997 阅读 · 1 评论 -
大小端字节序(存储)——百度,华为,腾讯,深信服大厂面试题(详解)
如果你听懂了我所讲述的内容我们离大厂offer又进了一步!!!一.介绍维基百科:字节顺序,又称端序或尾序(英语:Endianness),在计算机科学领域中,指电脑内存中或在数字通信链路中,组成多字节的字的字节的排列顺序这个的意思就是数据在存储的时候字节的存储顺序不同叫做字节顺序。二.种类我们都知道内存的作用就是存储数据,而存储的方式在不同的操作系统上方式也是不同的所以字节序经常被分为两类:1.Big-Endian(大端):高位字节排放在内存的低地址端,低位字节排放在内...原创 2022-03-02 16:53:21 · 417 阅读 · 0 评论 -
C语言入门项目:三子棋小游戏(详解)
C语言入门项目:三子棋小游戏(详解),不要担心学不会,那是没有项目!!!原创 2022-01-23 12:08:58 · 2815 阅读 · 1 评论 -
缓冲区,缓存,fflush(stdin)如何使用?
本人也是初步学习缓冲区问题,如下面有不正确或者表达不当的地方还请大佬在评论区斧正!!!对初学者来说fflush(stdin)被解释为清除输入缓存但在不同的时期它的作用也在不断淘汰。缓冲区问题也能困扰了不少c语言小白或者一些人学习的脚步,那什么是缓冲区,缓存,以及怎么结决这些问题呢?那我一一给大家介绍,基础懂了就懂了其中的原理(博主可能会发布新的关于缓冲的问题或者其他问题的观点所以给波关注不迷路!!!)我们将以以下代码作为实例一、什么是缓冲区缓冲区又称为缓存,它是内存空间的一部分.原创 2022-01-14 12:11:53 · 7410 阅读 · 2 评论