自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 struct结构体的使用及内存分配规则,和union联合体的简单说明

因此,我们在设计结构体时,应该将较小的结构体成员放在一起,这样就能防止内存对齐时浪费太多空间(修改默认对齐数#pragma pack(num),num就为修改的默认对齐数)

2023-11-13 14:55:37 121

原创 内存函数memcpy和memmove的实现

相对strcpy函数,memcpy等内存函数能够通过指针直接操作传入的目标参数,实现对目标的修改,今天就来讲一下其中memcpy和memmove函数的实现首先了解函数功能及函数参数即从源地址source拷贝n个字节到目标地址destin中,因此相比strcpy拷贝字符串遇到'\0'就停止,memcpy内存拷贝有更广的应用函数功能应用:可以看到arr2中的前四个字节内容fedc被拷贝到了arr1中然后定义一个char类型指针ret接收目标地址用于最后返回(

2023-11-10 14:28:59 43 1

原创 浮点数在内存中的存储和取出方式

在这里,先将a=9的二进制序列写出来:00000000...01001,在这里,我们加上小数点后的二进制,小数点后一位为2^-1(2的负1次方),后两位为2^-2,依此类推......*b=9.00的二进制序列则为:00000000...01001.00;S即是二进制的最高位即符号位,以-1^S表示,当S为0时,-1^0为1,S为1时,-1^1为-1,所以S表示浮点数的符号;根据这两个输出我们可以判断浮点数和整形的存储、取出方式肯定都是有区别的,那么,浮点数的存储、取出方式是什么呢。

2023-06-05 09:51:45 241 1

原创 扫雷基础版实现

当排到的不是雷时,就需要显示周围雷的数量,这里我们使用函数GetMines()来计算周围雷的数量,这里我们把非雷和雷初始化‘0’和‘1’的好处就来了,‘0’的ASCLL码值为48,‘1’为49,所以我们只需要把周围8个坐标的值加起来减8乘以‘0’,最后的结果就是数字雷的数量了,返回这个值就行了。然后把这个值赋给玩家输入的坐标,再打印一遍展示给玩家的棋盘,最后当win步数=棋盘总数-雷数时,游戏结束打印“你赢了”printf("--------------扫雷游戏--------------\n");

2023-05-13 15:53:12 47

原创 c语言实现三子棋

接下来,我们就需要在main函数实现.c文件里去反复调用功能函数实现程序了,这里使用game()函数来实现,创建一个ret变量来保存我们输赢判断的返回结果,玩家和电脑每次落子都需要判断一下输赢,所以落子→打印棋盘→判断输赢,按照这样的顺序调用函数,如果不符合条件'Z',就跳出循环做判断本局结果。对于玩家的选择我们应该先输入后判断,并且需要循环直到玩家选择退出,这里可以用do-while语句实现,玩家输入后,根据输入值执行不同的结果可以使用switch,那么case 1下面就可以放我们的游戏主体了。

2023-05-09 17:22:08 32 1

原创 认识C语言

C语言是一门面向过程的计算机编程语言,像人类之间交流的语种(英语、中文......),C语言是用来与计算机交流的语言(C/C++/JAVA......);C语言是一门擅长底层开发的语言,电脑(硬件)通过操作系统(windows/Linux/MaxOS...)运行,操作系统通过驱动层驱动硬件工作,应用软件(QQ/微信...)通过操作系统运行,应用软件层以上为上层开发,以下(包括操作系统、驱动层、硬件...)为底层开发;

2023-04-13 20:49:33 43 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除