问个结构体和c指针相关的问题
来源:8-6 案例:单链表的基本实现

慕尼黑7034286
2021-03-28
/**
* 自定义一个Array结构
*/
typedef struct {
// 数组
int *data;
// 数组中的元素个数
int size;
// 数组的容量
int capacity;
} Array;
/**
* 在index索引的位置插入一个新元素e
*/
void add(Array *array, int index, int e) {
assert(array->size < array->capacity && index >= 0 && index <= array->size);
for (int i = array->size - 1; i >= index; --i) {
array->data[i + 1] = array->data[i];
}
array->data[index] = e;
array->size = array->size + 1; // 这一句总是报内存不可访问,是为什么呢?
}
写回答
2回答
-
你确定不是上一句报错?你的 data 是怎么初始化的?
032021-03-30 -
bennyhuo
2021-03-28
只要你正常初始化了 data,没啥毛病啊。
00
相似问题