C 语言结构体指针实现数据的增删改查

学习数据结构的过程,有助于你对编程的整体有一个理解
另外,推荐无论如何都要学习C语言,很有启发
调试环境:VS2019 社区版
确定一个数组,需要三个有效参数
1.* pBase 首元素地址
2.len 总数组长度
3.cnt 有效数据长度
如何读懂代码:
1.熟悉执行流程
2.熟悉实现过程
3.试数

#include<stdio.h>
#include<stdbool.h>
#include<stdlib.h>
#include<malloc.h>
typedef struct Arr
{
   
	int* pBase;//数组的首地址
	int len;//数组的长度
	int cnt;//有效数据长度,一般面向对象的语言都是可以直接调用的:arr.length 类似这种
}ARR, *pARR ;// struct Arr ARR     struct ARR * pARR


bool isEmpty(pARR pArray)
{
   
    //有效数据是0
    if (0 == pArray->cnt)
    {
   
        return true;
    }
    else
    {
   
        return false;
    }
}
bool isFull(struct Arr* pArray)
{
   
    //有效数据等于长度
    if (pArray->cnt == pArray->len)
    {
   
        return true;
    }
    else
    {
   
        return false;
    }

};
void initArr(struct Arr* pArray, int length)//初始化结构体,两个形参,一个是地址,一个是长度
{
   
    pArray->pBase = (int*)malloc(sizeof(int) * length);//给数组的第一个元素分配内存
    if (NULL == pArray->pBase)
    {
   
        printf("内存分配失败\n");
        exit(
  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值