Skip to content
Snippets Groups Projects
Commit 56b778db authored by abivarma.kandiah's avatar abivarma.kandiah
Browse files

Modified vector map

parent ddd6e0f2
No related branches found
No related tags found
No related merge requests found
...@@ -30,6 +30,6 @@ void vector_insert(vector vec, type element, int index); ...@@ -30,6 +30,6 @@ void vector_insert(vector vec, type element, int index);
void vector_empty(vector vec); void vector_empty(vector vec);
void vector_free(vector vec); void vector_free(vector vec);
void vector_print(vector vec, void (*print)(type)); void vector_print(vector vec, void (*print)(type));
void vector_map(vector vec, type (*f)(type)); vector vector_map(vector vec, type (*f)(type));
#endif #endif
\ No newline at end of file
...@@ -59,14 +59,17 @@ int main() ...@@ -59,14 +59,17 @@ int main()
} }
vector_print(test, &print_type); vector_print(test, &print_type);
printf("\n"); printf("\n");
//Test Vector map //Test Vector map
vector_map(test, &times_two); vector test_2 = vector_map(test, &times_two);
vector_print(test, &print_type); vector_print(test_2, &print_type);
//Test Vector filter
//Test Vector Free //Test Vector Free
vector_free(test); vector_free(test);
vector_free(test_2);
return 0; return 0;
} }
......
...@@ -137,10 +137,13 @@ void vector_print(vector vec, void (*print)(type)) ...@@ -137,10 +137,13 @@ void vector_print(vector vec, void (*print)(type))
} }
} }
void vector_map(vector vec, type (*f)(type)) vector vector_map(vector vec, type (*f)(type))
{ {
vector new_vec = vector_create();
for (int i = 0; i < vec->length; i++) for (int i = 0; i < vec->length; i++)
{ {
vec->content[i] = f(vec->content[i]); vector_push(new_vec, f(vec->content[i]));
} }
} return new_vec;
\ No newline at end of file }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment