- 博客(6)
- 收藏
- 关注
原创 结构体内存对齐
如果我们能保证将所有的double类型的数据的地址都对⻬成8的倍数,那么就可以 ⽤⼀个内存操作来读或者写值了。3. 结构体总⼤⼩为最⼤对⻬数(结构体中每个成员变量都有⼀个对⻬数,所有对⻬数中最⼤的)的。4. 如果嵌套了结构体的情况,嵌套的结构体成员对⻬到⾃⼰的成员中最⼤对⻬数的整数倍处,结构。体的整体⼤⼩就是所有最⼤对⻬数(含嵌套结构体中成员的对⻬数)的整数倍。对⻬数 = 编译器默认的⼀个对⻬数 与 该成员变量⼤⼩的较⼩值。2. 其他成员变量要对⻬到某个数字(对⻬数)的整数倍的地址处。为什么存在内存对⻬?
2024-01-28 10:25:47
275
1
原创 整数和浮点数在内存中存储
这意味着,如果E为8位,它的取值范围为0~255;但是,我 们知道,科学计数法中的E是可以出现负数的,所以IEEE 754规定,存⼊内存时E的真实值必须再加上 ⼀个中间数,对于8位的E,这个中间数是127;那么,第⼀位的符号位S=0,有效数字M等于001后⾯再加20个0,凑满23位,指数E等于3+127=130,对于64位的浮点数,最⾼的1位存储符号位S,接着的11位存储指数E,剩下的52位存储有效数字M。对于32位的浮点数,最⾼的1位存储符号位S,接着的8位存储指数E,剩下的23位存储有效数字M。
2024-01-19 19:54:19
1581
原创 函数栈帧的创建和销毁
函数调用堆栈是反馈函数调用逻辑的,那我们可以清晰的观察到, main函数调用之前在invoke_main函数之前的函数调用我们就暂时不考虑了。为了让我们研究函数栈帧的过程足够清晰,不要太多干扰,我们可以关闭下面的选项,让汇编代码中排。在经典的计算机科学中,栈被定义为一种特殊的容器,用户可以将数据压入栈中(入栈,2个寄存器:esp和ebp, ebp记录的是栈底的地址,esp记录的是栈顶。函数栈帧的创建和销毁过程,在不同的编译器上实现的方法大同小异,本次演示以。这里的分析很好的说明了函数的传参过程,以及函数。
2023-12-19 22:01:02
1708
1
原创 从零开始介绍扫雷游戏及代码实现
再继续分析,我们在棋盘上布置了雷,棋盘上的雷的信息)(1)和非雷的信息(0),假设我们排查了某一个位置后,这个坐标不是雷,这个坐标的周围有1个雷,那我们需要将排查出的雷的数量信息记录存储,并打印出来,作为排雷的重要参考信息的。假设我们排查(8,6)这个坐标时, 我们访问周围的一圈8个黄色位置,统计周围雷的个数是,最下面的三个坐标就会越界,为了防止越界,我们在设计的时候,给数组扩大一圈,雷还是布置在中间的9*9的坐标上,周围一圈不去布置雷就行,这样就解决越界的问题。如果不是雷,就显示周围有几个雷。
2023-12-18 14:50:07
1103
原创 分支和循环语句
当你从一个什么都不懂的小白到能够灵活的使用分支和循环的时候,就说明你C语言刚刚开始入门了,但是这是远远不够的,你还得继续坚持下去。
2023-12-16 16:36:27
345
1
原创 第一篇博客
3:我打算这样学习编程:大一主要是刷题让自己对写题方面的逻辑能力得到很好的训练和学好C。1.我是一名大一的计算机科学与技术专业学生,姓名:李金权,性别:男。2:我的编程目标是:成为学校在编程方面的拔尖的那一批队伍中的成员。4.我打算一周在学习编程上花费35个小时以上时间学习。5:想进入的IT公司:现在暂时还没有。
2023-10-31 10:30:07
27
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人