vector_dinamic *creeaza_vector()
{
vector_dinamic *v=malloc(sizeof(vector_dinamic)*capacitate_initiala);
v->Element=malloc(sizeof(Elements)*capacitate_initiala);
v->lungimea=0;
v->capacitatea=capacitate_initiala;
return v;
}
这是一个动态向量,其中lunimea 是长度,capacitatea 是容量。capcacitatea_initiala 是 100,这意味着我可以存储 100 个元素。
typedef void* Elements;
typedef struct{
Elements * Element;
int lungimea;
int capacitatea;
} vector_dinamic;
我也有这种类型的元素,为了能够在我的向量中存储不同类型的元素,我已经设法进行了添加,但我的问题是如何比较相同类型的两个元素,我想实现删除功能,但我正在努力比较两个元素
typedef struct{
int numar_apartament;
int suma;
char * tipul;
} Cheltuieli;
我有这个元素类型,现在有人可以告诉我如何通过“numar_apartament”比较我的通用向量中的元素吗?
void modifica(vector_dinamic * vector, int numar_apartament)
{
int i,a=0;
for (i=0;i<vector->lungimea;i++)
{
if (vector->Element[i]->numar_apartament)==element->numar_apartament)
a=1;
}
return a;
}
这是我尝试过的,但我得到了很多错误而且它不起作用......
谢谢!