- 博客(15)
- 收藏
- 关注
原创 strlen的模拟实现
strlen函数被C语言定义在string.h文件中,全称string length,指求字符串的长度。我们都知道字符串的储存末尾总要加上\0,那我们就可以借此实现strlen的模拟。
2023-11-01 20:23:52
39
2
原创 【C语言】指针(1)
电脑内存有8GB、16、32GB等等,说明了电脑储存数据的大小,那么问题来了,这么大的空间如何精确地找到每一个数据所在的位置呢?😊😊😊😊😊生活中有地址,其实数据在内存中的储存也有地址,也就是耳熟能详的指针,让我们一起来了解指针吧。
2023-11-01 20:05:53
32
原创 【C语言】操作符
😊其实二进制也好,十进制也好,都是数值的不同表示方法,正如十进制每一位表示10、10、……二进制也是如此,2、2、……更有意思的是2进制转8进制、二进制转16进制8进制第一位和2进制前三位等价同理。
2023-10-30 21:14:34
34
2
原创 【C语言】求一个整数储存在内存中二进制中1的个数
首先我们应该知道十进制中取每位数的方法,%10再/10进行循环同样,要得到二进制序列的0或1,也可以%2再/2循环😊😊😊但这个方法对负数不管用-1%2=-1,因此count=0。
2023-10-30 18:28:12
51
2
原创 不能创建第三个变量,实现两个数交换
1.b的二进制序列0,遇到两次1,0^1=1,1 ^ 1=0;a^b代表a和b两个数值的二进制序列进行。那我们不妨想一想a^b ^a是什么结果。2.b的二进制序列1也是如此。咱们先介绍按位异或^操作符。分类讨论就可以想明白。
2023-10-30 14:54:13
36
1
原创 C语言递归函数
学习过高中数列的小伙伴肯定十分熟悉,只要给出前几项,再结合递推公式,所有结果都能求出。而C语言中递归也是如此,一个复杂的过程如果有相似的底层原理,那么可以通过递推回到最简单的初层进行计算,再通过回归计算我们想要的N层。
2023-10-29 11:21:36
60
1
原创 经典栈区变量覆盖
故arr[i]可能越界,来到i的地址,并修改i变量储存的值,进而造成死循环。1.在为main函数开辟的栈帧内,地址的使用是从高地址到低地址。2.又因为arr数组内元素是由低地址往高地址储存的。也就是说arr变量周围的堆栈损坏,为什莫讷?故变量i比数组arr低脂高。
2023-10-28 17:11:22
36
1
原创 C语言数组
素,这时候就是⼆维数组,⼆维数组作为数组元素的数组被称为三维数组,⼆维数组以上的数组统称。⼀个⽐较迷惑的点,变⻓数组的意思是数组的⼤⼩是可以使⽤变量来指定的,在程序运⾏的时候,根。前⾯学习的数组被称为⼀维数组,数组的元素都是内置类型的,如果我们把⼀维数组做为数组的元。存放在数组的值被称为数组的元素,数组在创建的时候可以指定数组的⼤⼩和数组的元素类型。• [] 中的常量值是⽤来指定数组的⼤⼩的,这个数组的⼤⼩是根据实际的需求指定就⾏。数组也是有类型的,数组算是⼀种⾃定义类型,去掉数组名留下的就是数组的类型。
2023-09-14 17:24:48
26
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人