- 博客(4)
- 收藏
- 关注
原创 C语言实现动态数组[数据结构]
在C语言中,数组长度一旦被定义,就不能再改变,使得对于数组元素的增删变的十分麻烦,本文将使用一些C语言常见的函数来实现数组的动态扩容,增删功能这段代码一共设计了九个函数,分别实现初始化动态数组.扩容动态数组.销毁数组空间.获取数组长度.数组往指定索引位置添加元素.数组往尾部插入元素.数组删除指定索引位置的元素.数组删除指定索引位置的元素.遍历数组元素九个功能.
2025-03-03 20:04:51
586
原创 C语言结构体中定义属性选择指针还是数组的情况分析
先来说结论,当你的参数传入是通过赋值的方式,就定义指针属性,当你的参数传入是通过scanf()的方式,就选择数组. 原因很简单,当我们将结构体中定义指针这个属性,那么应该是下面这种格式,也就是指针并没有指向一个具体的值,相当于野指针.而scanf这种录入数据的方式,是需要一块连续的地址空间来存储它赋的数据,那么,我们再通过scanf这种方式去给指针赋值,就相当于向一个无效的地址内存写入数据,会导致未定义行为或直接崩溃. 但当我们用数组接收scanf数据的时候,因为数组在定义时就
2025-02-28 21:19:17
316
原创 C语言指针
既然指针是一个储存地址的值,涉及到值,一定会有运算,例如我们定义的是int*类型的指针,那么我们就可以和int类型的数进行运算,例如ptr+1;这表示在当前ptr指向的地址再往后+4个字节的地址(一个地址一个字节),为什么是4个字节,因为是int类型,int类型在系统中占4个字节的位置。在C语言中,我们不知道创建的元素被存在内存的位置,这些地址无法表示,那我们也就找不到这些元素.所以,我们创建了一个叫做指针的变量,注意,指针是一个变量,用它来储存地址!类比一下刚刚的 int num = 10;
2025-02-27 16:50:40
173
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅