C语言
文章平均质量分 86
分享C语言知识
永远向阳而生
越努力越幸运
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
用C语言实现 三子棋 小游戏
代码基本和玩家的一样,唯一要考虑的一点是如何实现电脑在合法范围内随机找位置下的功能,这就必须得用到srand()函数、time()函数,利用时间戳在主函数main()中生成随机数,然后在电脑下棋的函数中用rand()函数%上对应范围内行和列,则生成合法范围内随机数,这边就不对此函数进行介绍,可自行百度。最后,就剩下一个判断输赢的程序小游戏就完成了,我们希望玩家、电脑每走一步棋就用Iswin()判断一次输赢,这一过程同样也是对数组进行判断,最后把棋盘的结果再打印在屏幕上一次。原创 2024-05-01 19:59:18 · 269 阅读 · 1 评论 -
深入理解指针(1)——指针基础概念
指针变量是用来存放地址的,存放在指针变量中的值理解为地址原创 2024-09-09 02:42:37 · 738 阅读 · 0 评论 -
自定义类型——结构体
结构体是一些不同类型值的集合,这些值称为成员变量。原创 2024-10-17 12:56:16 · 791 阅读 · 0 评论 -
深入理解指针(2)——指针运算
形参是实参的一份临时拷贝,更改形参并不会影响实参原创 2024-09-16 22:18:48 · 766 阅读 · 0 评论 -
二叉树及其顺序结构(堆)
树是一种非线性结构,它是由n(n>=0)个有限节点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一颗倒挂着的数。原创 2024-11-04 16:27:49 · 950 阅读 · 0 评论 -
C语言数据结构之算法复杂度
算法在编写成可执行程序后,运行时需要消耗时间资源和空间(内存)资源。因此衡量一个算法的好坏,一般是从时间和空间两个维度来衡量,既时间复杂度和空间复杂度。原创 2024-10-15 11:28:00 · 1046 阅读 · 0 评论 -
C语言内存函数
目录一、memcpy使用和模拟实现二、memmove使用和模拟实现三、memset函数的使用四、memcmp函数的使用正文开始。原创 2024-10-08 16:12:35 · 1699 阅读 · 0 评论 -
判断一个数的二进制共有几个1
判断一个数的二进制共有几个1,无非就是把每个二进制位都拿出来看是不是1,是1计数器就+1原创 2024-09-03 11:44:50 · 474 阅读 · 0 评论 -
指针与strlen、sizeof的使用——深入理解指针(5)
(1)sizeof(数组名)表示整个数组,计算的是整个数组大小,单位字节;(2)&数组名 取出的是整个数组的地址,是地址!!!!(只要是地址,在不同的编译器下大小只有4/8个字节)原创 2024-10-06 05:45:31 · 915 阅读 · 0 评论 -
分支和循环(下)
玩家猜数字,猜数字的过程中,根据猜测数据的⼤⼩给出⼤了或⼩了的反馈,直到猜对,游戏结束。原创 2024-08-25 11:55:23 · 890 阅读 · 0 评论 -
冒泡排序模拟实现qsort函数
qsort函数是用来实现各种数据排序,底层用到的是快速排序算法,它有四个参数,最后一个参数是函数指针变量,函数指针两个参数是void*,qsort返回值是void即不需要返回值原创 2024-10-03 13:06:13 · 851 阅读 · 0 评论 -
VS之调试那些事
承认问题的出现并寻找问题则为调试,英文名叫:debug(消灭bug)原创 2024-08-31 19:00:18 · 498 阅读 · 0 评论 -
strlen 的模拟实现
strlen是库函数,调用它时要引头文件string.h;strlen的用途是计算字符串中‘\0’之前的个数,只能是字符串。可以打开cplusplus查看它的使用,其中要提一下的是它的返回值类型是size_t等于无符号整型,因为长度默认没有负数所以用无符号整型;为了让代码比较健壮,经常看到代码中用const和assert关键字来修饰assert称为断言,能够帮助程序员在编写程序时判断指针是否为空,更快地发现问题并进行修复,需引头文件assert.h。原创 2024-06-16 18:06:08 · 324 阅读 · 0 评论 -
数据结构之顺序表
顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。原创 2024-10-31 09:22:30 · 1098 阅读 · 0 评论 -
指针数组和数组指针
接下来试着把每个地址+1,因为数组每个元素类型是int,arr表示首元素地址的话它的类型是int*,指针+1跳过的是4/8个字节,接下来看看结果是否一致。可以看出arr和&arr[0]+1确实是跳过了4个字节,&arr跳过的是十六进制的0x28换算成十进制为整个数组大小40(数组10个元素每个元素int,大小为40),所以&数组名,表示整个数组的地址。创建一个数组arr,它有10个元素,每个元素的类型是int,当把数组名当做函数参数进行传参时,实际上传递的是首元素的地址,等同于&arr[0];原创 2024-05-30 17:13:17 · 339 阅读 · 0 评论 -
分支和循环(上)
C语言是结构化的程序设计语言,这里的结构指的是顺序结果、分支(选择)结构、循环结构原创 2024-08-24 12:21:58 · 965 阅读 · 0 评论 -
结构体内存对齐
结构体的内存对齐是拿空间换取时间的做法。原创 2024-06-23 18:20:34 · 857 阅读 · 0 评论 -
浮点数在内存中的存储
常见的浮点数类型有:float、double、long double类型,浮点数的存储是根据国际标准IEEE(电⽓和电⼦⼯程协会)754进行存储原创 2024-09-22 17:54:24 · 819 阅读 · 0 评论 -
深入理解指针(4)——函数指针
函数指针的真正用途是实现回调函数,那么回调函数该如何实现呢?先看一下该函数语法介绍原创 2024-09-30 17:02:35 · 928 阅读 · 0 评论 -
扫雷游戏详解
此篇文章的目的是在VS控制台上通过9*9的棋盘实现模拟扫雷游戏。原创 2024-08-29 18:59:04 · 1346 阅读 · 0 评论 -
深入理解指针(3)——指针数组
⼀维数组传参,形参的部分可以写成数组的形式,也可以写成指针的形式。原创 2024-09-17 16:06:58 · 393 阅读 · 0 评论
分享