当前位置:首页 > 内存 > 正文

struct结构体删除内存

  • 内存
  • 2024-05-08 12:54:25
  • 4429

一、c语言结构体里的一条记录如何删除结构也可以被认为是一种基本数据类型。
删除结构体数组中的值与删除常规数组中的值类似。
删除常规数组,就是将下一个数据向前移动,达到覆盖的效果
例如:a[4]想要删除第二个元素。然后保留a[1]
=
a[2];a[2]
=
a[3];
最好不要碰最后一个。不要访问它,相当于删除第二个元素。
该结构与上面类似,但该结构代表的是您的个性化数据,因此在定义时您必须重载赋值符号(即=),否则赋值过程中会出现错误。
二、#include<stdio.h>structst{intx,y;}data[2]={1,10,2,20};main(){structst*p=data;虽然这段代码可以执行,但它并不严谨
我假设你是一个新手,如果你毕业后打算从事编程行业,选择一本更严格的教材最好是你的问题,答案如下。下面
第一个问题,数组data的元素个数为2,请求的内存空间为4英寸
为什么可以存储4个数字?这是因为data是一个自定义类型structst的数组
并且structst的每个实例占用2int内存空间
所以datadata[0].x;data[0].y;data[1]是。x;data[1].y;
第二个问题,如果第一个问题你理解清楚了,那么解释第二个问题就会更容易
p->为什么y为什么朝向第二个指向元素?它指向第一个元素的第二个成员变量
也就是说,p->y访问的是data[0].y
你为什么会有错误的理解,是因为你使用了误解定义
数组实际上是一个常量指针,指向常量的内存空间
你可能比我更熟悉上面的内容,但是你把一维数组想象成一个二维数组。维数组
但是我想你还是不太明白,因为我不太擅长教别人,所以你可以考虑一下这个
intdata[2]和int*data[2];什么这两个数组有什么区别?