我正在用c语言编写一个有关动态数组的程序,代码是:
#include <stdio.h>
struct Vector {
int size;
int capacity;
int *arr;
};
void add(struct Vector *Arr, int data) {
if (Arr->size == Arr->capacity) {
Arr->capacity *= 2;
int arr[Arr->capacity];
//array copy
for (int i = 0; i < Arr->size; i++) {
arr[i] = Arr->arr[i];
}
Arr->arr = arr;
}
int size = Arr->size;
Arr->arr[size] = data;
Arr->size++;
}
void display(struct Vector *Arr) {
for (int i = 0; i < Arr->size; i++) {
printf("%d ", Arr->arr[i]);
}
printf("\n");
} …Run Code Online (Sandbox Code Playgroud)