Fly1ngM0nkey 2022-03-03 20:06 采纳率: 25%
浏览 143
已结题

线性表删除元素操作时,定义了两个指针变量p和q,为什么q后面的” L.elem+L.length-1“不用加&符号呢?

L.length和1不都是int整型变量吗?"L.elem+L.length-1"这句话到底什么含义呢?

部分代码如下:

#include <stdio.h>
#include <stdlib.h> // 定义杂项函数和内存分配函数
#include <string.h> // 字符串处理
#define OK 1
#define OVERFLOW 0
#define LIST_INIT_SIZE 100
#define LISTINCREMENT 10
typedef int Status;

//定义线性表的顺序存储结构
typedef struct {
Student *elem;
int length;
int listsize;
}SqList;

//删除第i个学生信息
Status ListDelete_Sq(SqList &L, int i) {
Student *q;
Student *p;
printf("输入要删除第几个元素:");
scanf("%d",&i);
if ((i < 1)||(i > L.length)) return 0;
p = &(L.elem[i-1]);
q = L.elem+L.length-1; // 这句话不用加&号吗,L.length和1不都是int整型变量吗?"L.elem+L.length-1"这句话到底什么含义呢?
for (++p; p <= q; ++p)
*(p-1) = *p;
-- L.length;
printf("删除成功:\n");
return 1;
}

  • 写回答

2条回答 默认 最新

  • 一只蚂蝼 2022-03-03 20:38
    关注

    虽然L.length和1是整数没错,但是 L.elem是地址啊

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月13日
  • 已采纳回答 3月5日
  • 修改了问题 3月3日
  • 修改了问题 3月3日
  • 展开全部

悬赏问题

  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景