- 博客(6)
- 收藏
- 关注
原创 C语言扫雷
众所周知,扫雷是一款经典的益智游戏,其目标是找出所有隐藏的雷,同时避开触雷。这款游戏需要玩家具备观察和推理的能力。盘面上有许多方格,方格中随机分布着一些雷。一个非雷格中的数字表示其相邻8格中的雷数,玩家可以利用这个信息推导出安全格和雷的位置。接下来我们将使用c语言实现扫雷游戏的实现。
2023-12-10 16:43:11
85
1
原创 分支和循环
条件表达式是一个布尔表达式,每次循环开始前都会进行判断,如果为真则继续执行循环体中的代码块,否则跳出循环;这是因为if语句只能控制一条语句,当条件为真时,这个语句执行,当条件为假时,语句不执行,如果想要if语句控制多条语句,就要使用。在上面的代码中,无论输入的数字是多少,第二个输出语句都会执行,也就是说这个if语句并没有起到控制第二个输出语句的作用。在C语⾔中,0为假,⾮0表⽰真,也就是表达式的结果如果是0,则语句不执⾏,表达式的结果如果是。在分支语句中,默认在if语句和else语句都只控制一条语句。
2023-12-02 13:18:16
103
原创 函数指针经典例题
这个题目的要求是对( *( void (*)() )0 )();1.把0强制类型转换为:无参,返回类型是void的函数的地址。( *( void (*)() )0 )()一次函数的调用。*( void (*)() )0 )对这个函数的地址进行解引用。首先从内部开始看void (*)() 这是一个函数指针类型。强制类型转换把0从int类型转换为函数指针类型 0变成地址。使得(void (*)())0 )成为一个函数的地址。调用的是0作为地址处的函数。2.调用地址处的这个函数。
2023-11-22 11:51:06
155
原创 二级指针的传参
需要注意的是,每增加一级指针,在定义指针变量时就会增加一个星号*。二级指针,又被称为指向指针的指针,是一种在C语言中常见的指针类型。例如,假设有一个int类型的变量a,p1是指向a的指针变量,p2又是指向p1的指针变量,那么可以说p2是一个二级指针。考虑这样一个情况:在函数外部定义一个指针p,在函数内给指针赋值,函数结束后对指针p生效,那么我们就需要二级指针。在这个函数中可以看到,二级指针传参的方式有二级指针变量本身,一级指针的地址。如果函数的形式是二级指针,调用函数的时候可以传什么实参呢?
2023-11-22 09:29:00
464
原创 字符指针和指针数组
这里使用指针的方式,使用三个整数数组,模拟出来了一个二维数组,在这个二维数组中,只要知道了其中的一维数组首元素的地址,就可以找到后面的地址。arr1和arr2是一个字符数组,数组在内存中需要开辟一个属于数组的内存空间,所以arr1和arr2的首元素的地址就不会相同。指针数组是一个数组,它的每个元素都是指针类型。1.sizeof(数组名),这里的数组名表示整个数组,计算的是整个数组的大小。2.&数组名,这里的数组名表示整个数组,取出的是整个数组的地址。字符指针是用来存放字符的地址的。
2023-11-21 16:49:25
160
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅