|
1 | 1 | # dynamic-arrays |
2 | | -arrays dinamicos, en definición, una implementación de vectores auto-redimensionables al estilo de lenguajes de alto nivel como C++. En este caso hemos hecho varias implementaciones de función C++ para controlar vectores pero en código C puro |
| 2 | + |
| 3 | +---- |
| 4 | + |
| 5 | +Arrays dinamicos. En definición, una implementación de vectores auto-redimensionables al estilo de lenguajes de alto nivel como C++. En este caso hemos hecho varias implementaciones de función C++ para controlar vectores pero en código C puro. |
| 6 | + |
| 7 | +Las funciones implementadas son las siguientes: |
| 8 | + |
| 9 | +```C |
| 10 | +vector *new_vector(size_t size, size_t size_data); |
| 11 | +void print_vector_info(vector *my_vector); |
| 12 | +size_t vectores_sin_usar(); |
| 13 | +size_t size(vector *my_vector); |
| 14 | +size_t max_size(vector *my_vector); |
| 15 | +void resize(vector *my_vector, size_t size); |
| 16 | +void free_vector(vector *my_vector); |
| 17 | +void *get_elment_v(vector *my_vector, size_t posicion); |
| 18 | +size_t vectores_reserbados(); |
| 19 | +size_t vectores_ocupados(); |
| 20 | +size_t get_size_position(vector *my_vector); |
| 21 | +size_t pop_back(vector *my_vector); |
| 22 | +size_t push_back(vector *my_vector, void *data); |
| 23 | +bool empty(vector *my_vector); |
| 24 | +void clear(vector *my_vector); |
| 25 | +``` |
| 26 | +
|
| 27 | +Adicionalmente hay dos funciones que se ejecutan antes del `main` y al finalizar este. Su funcionalidad como constructores y destructores es liberar memoria reservada en el caso del destructor e inicializar y llevar un conteo de los vectores en el caso del constructor: |
| 28 | +```C |
| 29 | +void __attribute__((constructor)) __constructor_array_dinamic__(); |
| 30 | +void __attribute__((destructor)) __destructor_array_dinamic__(); |
| 31 | +``` |
| 32 | + |
| 33 | + |
| 34 | +---- |
0 commit comments