arr->data[i]怎么理解

img


111行arr->data[i]怎么理解?指针arr指向指针data[i]?
(data为存储数据的数组指针)

Array *arr; 定义的 arr 是结构体指针变量,通过结构体指针变量 arr 对结构体成员的引用有两种方式:arr->data[i]; 第二种为:*arr.data[i];

Array是顺序表结构体,arr->data[i]就是你这个结构体里的data数组的第i元素

这段代码是它将一个元素插入到数组中。代码块从一个for循环开始,该循环从索引e迭代到数组的末尾。如果当前索引处的元素的值大于X的值,则执行另一个for循环,该循环从末尾到当前索引迭代。在此循环中,每个元素向右移动一个位置,直到达到当前索引。最后,将x的值插入到当前索引处,并增加数组的长度。函数然后返回。