![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C语言
文章平均质量分 73
C语言知识
cls-evd
南风知我意,吹梦到西洲
展开
-
函数栈帧的创建与销毁
越高级的编译器,越不容易观察函数栈帧的创建与销毁。且不同编译器下是略有差异的。寄存器:eax,ebx,ecx,edx,ebp,esp;要理解函数栈帧,必须理解esp和ebp这两个寄存器,esp和ebp这两个寄存器中存放的是地址,这两个地址是用来维护函数栈帧的。每一个函数调用,都要在栈区上创建一块空间。假设程序开始调用main函数,main函数这块空间就由esp和ebp进行维护。准确来说正在调用哪个函数,我这个esp和ebp维护的就是哪块空间的函数栈帧。原创 2024-01-14 18:17:26 · 978 阅读 · 0 评论 -
三子棋(井字棋)的实现
三子棋(井字棋)的玩法规则两个玩家,一个打圈(O),一个打叉(X),(用什么符号可以根据自己想法使用)轮流在3乘3的格上打自己的符号,最先以横、直、斜连成一线则为胜。如果双方都下得正确无误,将得和局。如何用C语言来实现三子棋大致思路如下1.设计一个游戏的开始菜单,并让玩家可以自行选择开始,结束游戏;2.设计三子棋游戏的函数在这里插入代码片3.设计判断输赢的函数由于此程序 所需的代码量稍微有些多,所以我们将其分为三个部分来写1.test.c 用于写主函数2.game.c 用于写有关游戏的原创 2021-01-26 12:01:30 · 5940 阅读 · 5 评论 -
我对编程的看法
大家好,我是一名软件工程专业的大学生,很高兴认识大家,同时这也是我的第一篇博客。1.首先就是我编程的目标说实话学习这个专业最主要就是为了将来有一个比较高的收入这是对我来说目前是最根本的目的(说白了就是为了挣大钱????),其次我认为编程可以帮助我们解决一些生活中的一些实际问题,为我们提供我们日常中所需的2.我将如何去学习编程我认为学习编程最重要的就是要动手!动手!动手!"纸上得来终觉浅,绝知此事要躬行"很多时候你知道理论是不行的,更多的是要进行实践,今天学会一种东西,就要动手去电脑上敲一敲,这样提高原创 2021-01-10 23:40:57 · 2647 阅读 · 5 评论 -
经典版扫雷游戏的实现(含展开)
扫雷作为经典的电脑游戏,曾令很多人着迷,今天我就用C语言实现这个游戏扫雷的基本规则扫雷的详细规则是随便点开一个方格,根据展开方格的数字去推断其相邻九宫格内未展开方格下面是否是地雷,最终任务就是点开所有没有地雷的方格,以找出所有的地雷。用C语言来实现扫雷首先是扫雷效果图的展示 ,上图 呲牙 接下来大致介绍下实现扫雷的思路1.设计主菜单2.设计扫雷游戏(包括打印棋盘,设置雷,排查雷)接下来开始逐一详细介绍首先就是游戏主体的实现让玩家可以自行选择开始或者结束游戏void menu(){原创 2021-02-07 00:06:08 · 3129 阅读 · 5 评论 -
结构体大小计算详解
结构体内存对齐现在介绍的是计算结构体的大小,同时这也是比较热门的一个考点#include <stdio.h>struct s1{ char c1; // 1 int i; // 4 char c2; // 1};int main(){ struct s1 s1; printf("%d\n", sizeof(s1));}首先来看这串代码,大家可以简要分析一下最终打印出来是多少?我想可能大部分人会认为结果是6(结构体成员的大小相加)我们再来看看vs输出的结果发现原创 2021-03-14 12:21:21 · 1167 阅读 · 0 评论 -
数据的存储
数据在内存中的存储数据的基本归类1.整形家族char unsigned char signed charshort unsigned short [int] signed short [int]int unsigned int signed intlong unsigned long [int] signed long [int]2.浮点数家族floatdouble3.构造类型> 数组类型> 结构体类型 struct> 枚举类型 enum&原创 2021-02-27 21:17:53 · 383 阅读 · 3 评论