44
55- [ Description] ( #description )
66- [ Usage] ( #usage )
7- - [ Create new Dynamic-Array] ( #create-new-dynamic-array )
8- - [ Clear Dynamic-Array] ( #clear-dynamic-array )
7+ - [ Initialize \& Clear Dynamic-Array] ( #initialize--clear-dynamic-array )
98 - [ Append elements to Dynamic-Array] ( #append-elements-to-dynamic-array )
109 - [ Get length of Dynamic-Array] ( #get-length-of-dynamic-array )
1110 - [ Append elements of static-array to Dynamic-Array] ( #append-elements-of-static-array-to-dynamic-array )
1211 - [ Get element of Dynamic-array by index] ( #get-element-of-dynamic-array-by-index )
12+ - [ Append two Dynamica-Arrays inplace] ( #append-two-dynamica-arrays-inplace )
1313- [ ToDo] ( #todo )
1414
1515## Description
1919
2020## Usage
2121
22- ### Create new Dynamic-Array
22+ ### Initialize & Clear Dynamic-Array
2323
2424``` C
25+ //
26+ // Initialize dynamic-array
2527DynArray dynamic_array;
2628if (init_dyn_array(&dynamic_array) != NO_ERROR ) {
2729 return 1;
2830}
29- return 0 ;
30- ```
31-
32- ### Clear Dynamic-Array
33-
34- ``` C
35- DynArray dynamic_array;
36- if (init_dyn_array(&dynamic_array) != NO_ERROR ) {
37- return 1;
38- }
39-
31+ //
32+ // Clear dynamic-array
4033if (clear_dyn_array(&dynamic_array) != NO_ERROR ) {
4134 return 1;
4235}
@@ -47,23 +40,28 @@ return 0;
4740### Append elements to Dynamic-Array
4841
4942``` C
43+ //
44+ // Initialize dynamic-array
5045DynArray dynamic_array;
5146if (init_dyn_array(&dynamic_array) != NO_ERROR ) {
5247 return 1;
5348}
54-
49+ //
50+ // Append one element to dynamic-array
5551int value_A = 1337 ;
5652if (append_element_to_dyn_array(&dynamic_array, (void *)&value_A, sizeof (int )) != NO_ERROR ) {
5753 printf ("Couldn't append new element to dynamic-array\n");
5854}
59-
55+ //
56+ // Append 50 elements to dynamic-array
6057for (int value = 0 ; value < 50 ; value++) {
6158 if (append_element_to_dyn_array(&dynamic_array, (void*)&value, sizeof(int)) != NO_ERROR) {
6259 printf ("Couldn't append new element to dynamic-array\n");
6360 break;
6461 }
6562}
66-
63+ //
64+ // Clear dynamic-array
6765if (clear_dyn_array(&dynamic_array) != NO_ERROR ) {
6866 return 1;
6967}
@@ -74,25 +72,30 @@ return 0;
7472### Get length of Dynamic-Array
7573
7674``` C
75+ //
76+ // Initialize dynamic-array
7777DynArray dynamic_array;
7878if (init_dyn_array(&dynamic_array) != NO_ERROR ) {
7979 return 1;
8080}
81-
81+ //
82+ // Append 50 elements to dynamic-array
8283for (int value = 0 ; value < 50 ; value++) {
8384 if (append_element_to_dyn_array(&dynamic_array, (void*)&value, sizeof(int)) != NO_ERROR) {
8485 printf ("Couldn't append new element to dynamic-array\n");
8586 break;
8687 }
8788}
88-
89+ //
90+ // Get amount of elments in dynamic-array
8991size_t array_len;
9092if (get_len(&dynamic_array, &array_len) == true ) {
9193 printf ("length of dynamic-array=%d\n", array_len);
9294} else {
9395 printf ("Couldn't get length of dynamic-array\n");
9496}
95-
97+ //
98+ // Clear dynamic-array
9699if (clear_dyn_array(&dynamic_array) != NO_ERROR ) {
97100 return 1;
98101}
@@ -103,22 +106,27 @@ return 0;
103106### Append elements of static-array to Dynamic-Array
104107
105108``` C
109+ //
110+ // Initialize dynamic-array
106111DynArray dynamic_array;
107112if (init_dyn_array(&dynamic_array) != NO_ERROR ) {
108113 return 1;
109114}
110-
115+ //
116+ // Add static integer-array to dynamic-array
111117int static_int_array[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
112118if (append_static_array_elements_to_dyn_array(&dynamic_array, static_int_array, sizeof(int), (size_t)9) != NO_ERROR) {
113119 printf("Couldn't append int-elements of static-array to dynamic-array\n");
114120}
115-
121+ //
122+ // Add static char-array to dynamic-array
116123char * static_char_array = " HeLlO WoRlD" ;
117124size_t static_char_array_len = strlen(static_char_array);
118125if (append_static_array_elements_to_dyn_array(&dynamic_array, static_char_array, sizeof (char ), static_char_array_len) != NO_ERROR ) {
119126 printf ("Couldn't append static-string to dynamic-array\n");
120127}
121-
128+ //
129+ // Clear dynamic-array
122130if (clear_dyn_array(&dynamic_array) != NO_ERROR ) {
123131 return 1;
124132}
@@ -129,27 +137,64 @@ return 0;
129137### Get element of Dynamic-array by index
130138
131139``` C
140+ //
141+ // Initialize dynamic-array
132142DynArray dynamic_array;
133143if (init_dyn_array(&dynamic_array) != NO_ERROR ) {
134144 return 1;
135145}
136-
146+ //
147+ // Append string-element to dynamic-array
137148char * static_char_array = " HeLlO WoRlD" ;
138149size_t static_char_array_len = strlen(static_char_array);
139150size_t data_size = sizeof (char )*((size_t )static_char_array_len);
140151if (append_element_to_dyn_array(&dynamic_array, (void *)static_char_array, data_size) == NO_ERROR ) {
152+ //
153+ // Get string-element from dynamic-array by its index
141154 printf ("%s\n", (char* )get_element_by_index(&dynamic_array, 0));
142155} else {
143156 printf ("Couldn't append static-string to dynamic-array\n");
144157}
145-
158+ //
159+ // Clear dynamic-array
146160if (clear_dyn_array(&dynamic_array) != NO_ERROR ) {
147161 return 1;
148162}
149163
150164return 0 ;
151165```
152166
167+ ### Append two Dynamica-Arrays inplace
168+
169+ ``` C
170+ //
171+ // Initialize both dynamic-arrays
172+ DynArray dynamic_array_a, dynamic_array_b;
173+ if (init_dyn_array(&dynamic_array_a) == NO_ERROR || init_dyn_array(&dynamic_array_b) == NO_ERROR ) {
174+ //
175+ // Failed to initialize one or both dynamic-arrays
176+ return 1;
177+ }
178+ //
179+ // Add string as one element to dynamic-array-B (one node)
180+ char * static_char_array = " HeLlO WoRlD" ;
181+ size_t static_char_array_len = strlen(static_char_array);
182+ if (append_element_to_dyn_array(&dynamic_array_b, (void *)static_char_array, sizeof (char )*((size_t )static_char_array_len)) == NO_ERROR ) {
183+ //
184+ // Append string-element from dynamic-array-B to dynamic-array-A
185+ if (append_dyn_arrays_inplace(&dynamic_array_a, &dynamic_array_b)) {
186+ printf ("%s\n", (char* )get_element_by_index(&dynamic_array_a, 0));
187+ }
188+ }
189+ //
190+ // Clear dynamic-arrays
191+ if (clear_dyn_array(&dynamic_array_a) != NO_ERROR || clear_dyn_array(&dynamic_array_b) != NO_ERROR ) {
192+ return 1;
193+ }
194+
195+ return 0 ;
196+ ```
197+
153198## ToDo
154199
155200- [ ] Instead of iterating through whole dynamic-array at ` get_len ` , use ` size_t length ` -Value of ` DynArray ` -struct
0 commit comments