vector.c
Kod: Zaznacz cały
#include <stdlib.h>
#include <stdio.h>
typedef struct Vector {
int size;
int *data;
} Vector;
Vector *newVector(int n){
Vector *v = malloc(sizeof(Vector));
v->data = malloc(n*sizeof(int));
v->size = n;
return v;
}
void fillVector(Vector *v){
int i;
for (i=0, i<v->size; i++){
scanf("%i", &v->data[i]);
}
}
Kod: Zaznacz cały
typedef struct Vector Vector;
Vector *newVector(int n);
void fillVector(Vector *v);
Kod: Zaznacz cały
#include "vector.h"
int main(void){
Vector *v = newVector(3);
fillVector(v);
return 0;
}
Kod: Zaznacz cały
Vector *v = newVector(3);
v->data[1] = 12;
Dereferencing pointer to incomplete type
problem znika jeśli wrzucę całość z vector.c do vector.h ale ciała funkcji w nagłowkach to coś, czego chcę uniknąć
innymi słowy struktura zachowuje się jak klasa prywatna patrząc bardziej obiektowo na temat