自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C语言内存函数

1. memcpy函数:memcpy函数从source的位置开始向后复制num个字节的数据到destination指向的内存位置,这个函数在遇到‘\0’的时候并不会停下来,如果source和destination有任何的重叠复制的结果都是未定义的。3. memmove函数:和memcpy的差别就是me mmove函数处理的源内存块和目标内存块是可以重叠的,如果源空间和目标空间出现重叠,就得使用memmove函数处理。5. memset函数:是用来设置内存的,将内存中的值以字节为单位设置成想要的内容。

2024-08-27 13:35:37 250

原创 字符函数和字符串函数

strok函数的第1个参数不为NULL ,函数将找到str中第1个标记,strok函数将保存它在字符串中的位置,strok函数的第1个参数为NULL,函数将在同一个字符串中被保存的位置开始,查找下一个标记,如果字符串中不存在更多的标记,则返回NULL指针。查找一个字符串(str1)中是否包含另一个字符串(str2)以及首次出现的位置,函数返回字符串str2在字符串str1中第1次出现的位置,字符串的比较匹配,不包含字符‘\0’。以‘\0’作为结束标志。如果第1个字符串小于第2个字符串,则返回小于0的数字。

2024-08-19 16:30:52 241

原创 指针理解(5)

1.sizeof:sizeof计算变量所占内存空间的大小,单位是字节,如果操作数是类型的话,计算的是使用类型创建的变量所占内存空间的大小。sizeof只关注占用内存空间的大小,不在乎内存中存放什么数据。4.数组名的意义:(1)sizeof(数组名),这里的数组名表示整个数组,计算的是整个数组的大小(2)&数组名,这里的数组名表示整个数组,取出的是整个数组的地址(3)除此之外,所有的数组名都是表示首元素的地址。统计的是从strlen函数的参数,str中这个地址开始。\0之前字符串中的字符的个数。

2024-08-15 15:13:25 165

原创 指针理解(4)

1.回调函数:就是一个通过函数指针调用的函数,如果你把函数的指针作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,被调用的函数就是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时,由另外的一方调用的,用于对该事件或条件进行响应。使用回调函数模拟实现qsort(采用冒泡排序的方式)

2024-08-14 16:15:35 186

原创 指针的理解(3)

因为二维数组其实可以把每个元素看做是一维数组的数组,也就是说二位数组的每个元素是一个一维数组(一行),那么二维数组的首元素就是第1行是一个一维数组,根据数组民事数组首元素地址这个规则,二维数组的数组名表示的就是第1行的地址,是一维数组的地址。数组指针变量存放的是数组的地址,能够指向数组的指针变量。解释: P首先和*结合,说明p是一个指针变量,然后指针指向的是一个大小为10个整形的数组,所以p是一个指针指向一个数组,叫数组指针,这里需要注意的是,[]的优先级高于*的,所以必须加上括号来保证p先与*结合。

2024-08-12 11:48:08 371

原创 指针的理解(2)

在这段代码中arr[0]的方式拿到了数组第1个元素的地址,但其数组主名本来就是地址 数组名就是数组首元素(第1个元素)的地址。4.指针数组:整型数组是存放整型数据的数组,字符数组是存放字符的数组,那么指针数组是存放指针的数组,指针数组的每个元素是地址。2.一维数组传参的本质:数组传参的时候传递的是数组名,也就是说本质上数组传参传递的是数组首元素的地址。3.二级指针:指针变量也是变量,是变量就有地址,指针变量的地址就可以存放在二级指针中。

2024-08-08 12:17:41 172

原创 指针的理解(1)

const如果放在*的右边,修饰的是指针,变量本身保证了指针变量的内容不能修改,但是指针指向的内容,可以通过指针改变。这里调用的Swap2函数的时候是将变量的地址传递给了函数,这种函数调用的方式叫传址调用,传址调用可以让函数和主调函数之间建立真正的联系,在函数内部可以修改主调函数中的变量,所以未来函数中只是需要主调函数中的变量值来实现计算,就可以采用传值调用,如果函数内部要修改主调函数中的变量的值,就需要传址调用。5.指针变量类型的意义:指针的类型决定了对指针解引用的时候有多大的权限,一次能操作几个字节。

2024-08-07 23:03:34 218

原创 基础扫雷游戏的代码

总结上面两篇文章的代码。

2024-07-31 14:48:56 298

原创 关于扫雷游戏的理解下

而排查雷时,我们会用到前面的两个数组,一个是9×9的,我们需要在里面进行雷的排查,一个是11×11的,我们需要将排查出雷的信息显示到里面去。再去game.c中进行实现,首先要输入要排查的坐标,但是我们要对输入的坐标进行判断是否这个坐标是在9×9的数组里面的(合法的),如果输入的坐标是合法的,我们要对输入的坐标进行判断是否为雷,如果是雷(‘1’),就被炸死了。3.接下来我们要判断一个坐标是否布置过雷,如果不是雷(‘0’),就给它布置一个雷(‘1’),然后count--,就完成了布置雷的这个函数的实现。

2024-07-31 14:35:54 255

原创 扫雷游戏的理解上

如果我们选择1的话就是玩游戏,如果我们选择0的话就是退出,然后我们就把这个输入的值放在一个整形的变量input里面去,接下来我们要根据选的这个input的值来判断,如果选择的是1就玩游戏,选择的是0就退出游戏,如果选择的不是1也不是0,那我们就说选择错误,此时while的循环条件是input,如果我们玩完一把游戏后,我们选择1,我们可以再来一把游戏选择0我们就退出游戏,如果我们选择的既不是1也不是0的时候,他的判断条件为真,也可以再继续进行下一把游戏。2.我们需要给出,我们想要少的那个雷的坐标。

2024-07-25 11:14:35 455

原创 C语言中一维数组的理解

存放在数组的值,被称为数组的元素。[]中的常量值是用来指定数组的大小的,这个数组的大小是根据实际的需求指定就行,数组在创建的时候可以指定数组的大小和数组的元素类型。6.数组的下标: C语言规定数组是有下标的,下标是从0开始的,假设数组有n个元素,最后一个元素的下标是n-1,下标就相当于数组元素的编号。1.数组的概念:数组是一类相同类型元素的集合,数组中存放的是一个或多个数据,但是数组元素个数不能为0,数组中存放的多个数据类型是相同的,数组又分为一维数组和多维数组,多维数组一般比较多见的是二维数组。

2024-07-23 23:28:56 411

原创 关于c语言循环语句的理解

首先执行 表达式1初始化循环变量,接下来就是执行表达式2的判断部分,表达式2的结果如果==0,则循环结束;=0则执行循环语句,循环语句执行完后,再去执行表达式3,调整循环变量,然后再去表达式2的地方执行判断,表达式2的结果是否为0,决定循环是否继续。8. While循环和for循环的对比:for 和 while 在实现循环的过程中都有初始化、判断、调整这三个部分,但是for循环的三个部分非常集中,便于代码的维护,而如果代码较多的时候while循环的三个部分就比较分散,所以从形式上 for 循环要更优一些。

2024-07-21 11:33:23 685 1

原创 C语言的常见概念、历史及编译器的选择

Vs2022集成了msvc,安装包比较大一些,安装简单,无需多余,配置使用起来非常方便;DevC++集成了gcc,小巧,但是工具过于简单,对于代码风格的养成不好,一些竞赛使用。C语言是一门编译型计算机语言,C语言源代码都是文本文件,文本文件本身无法执行,必须通过编译器编译和链接器的链接,生成二进制的可执行文件,可执行文件才能执行。C语言简而言之就是一种计算机语言,是用人与计算机的交流,C语言是众多计算机语言中的一种,例如计算机还有C++/Java/Go等等。

2024-05-27 23:41:12 125

原创 C语言的起点

于是我下定决心要好好学习编程,我希望在经过我自己的努力,在将来可以做一名软件测试师。我会每天花时间去练习写代码,经过不断的积累,让我能在写代码上面能够熟能生巧。同时每天写写代码,不仅能锻炼我的逻辑思维,还能给我养成一个每天学习的好习惯。目前我还没有想我将来要在哪里工作,因为我觉得自己现在还太弱小了,我首先要做的是提升自己,只有不断提升自己这样在将来我才有选择的权利。我是一个来自农村的孩子,今年大一,摆烂了一年,决定好好学习。我们不应该一直活在自己的舒适区,要改掉自己那些坏习惯,加油。

2024-05-25 18:01:45 392

空空如也

空空如也

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

TA关注的人

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