#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
if (argc != 3) {
fprintf(stderr, “Usage: %s <N_OPS> <N_ENTRIES>\n”, argv[0]);
return 1;
}

int n_ops = atoi(argv[1]);
int n_entries = atoi(argv[2]);
int i, j;
int vector1, vector2, sum;

// Allocate memory for vectors
vector1 = (int)malloc(n_entries * sizeof(int));
vector2 = (int)malloc(n_entries * sizeof(int));
sum = (int)malloc(n_entries * sizeof(int));

if (!vector1 || !vector2 || !sum) {
fprintf(stderr, “Memory allocation failed\n”);
return 1;
}

for (i = 0; i < n_ops; i++) {
// Read pairs of vectors
for (j = 0; j < n_entries; j++) {
scanf(“%d”, &vector1[j]);
}
for (j = 0; j < n_entries; j++) {
scanf(“%d”, &vector2[j]);
}
// Add vectors and write output
for (j = 0; j < n_entries; j++) {
sum[j] = vector1[j] + vector2[j];
printf(“%d “, sum[j]);
}
printf(”\n\n”);
}

// Free allocated memory
free(vector1);
free(vector2);
free(sum);

return 0;
}
* Executing task: C/C++: gcc.exe build active file

Starting build…
“C:\msys64\ucrt64\bin\gcc.exe” -fdiagnostics-color=always -g “C:\Users\apoor\Downloads\prj2-sol\vector_addition.c” -o “C:\Users\apoor\Downloads\prj2-sol\vector_addition.exe”
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c: In function ‘main’:
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:16:15: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
16 | vector1 = (int)malloc(n_entries * sizeof(int));
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:17:15: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
17 | vector2 = (int)malloc(n_entries * sizeof(int));
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:18:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
18 | sum = (int)malloc(n_entries * sizeof(int));
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:28:33: error: subscripted value is neither array nor pointer nor vector
28 | scanf(“%d”, &vector1[j]);
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:31:33: error: subscripted value is neither array nor pointer nor vector
31 | scanf(“%d”, &vector2[j]);
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:35:16: error: subscripted value is neither array nor pointer nor vector
35 | sum[j] = vector1[j] + vector2[j];
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:35:29: error: subscripted value is neither array nor pointer nor vector
35 | sum[j] = vector1[j] + vector2[j];
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:35:42: error: subscripted value is neither array nor pointer nor vector
35 | sum[j] = vector1[j] + vector2[j];
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:36:30: error: subscripted value is neither array nor pointer nor vector
36 | printf("%d ", sum[j]);
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:42:10: warning: passing argument 1 of ‘free’ makes pointer from integer without a cast [-Wint-conversion]
42 | free(vector1);
| ^
| |
| int
In file included from C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:2:
C:/msys64/ucrt64/include/stdlib.h:537:27: note: expected ‘void *’ but argument is of type ‘int’
537 | void __cdecl free(void *_Memory);
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:43:10: warning: passing argument 1 of ‘free’ makes pointer from integer without a cast [-Wint-conversion]
43 | free(vector2);
| ^
| |
| int
C:/msys64/ucrt64/include/stdlib.h:537:27: note: expected ‘void *’ but argument is of type ‘int’
537 | void __cdecl free(void *_Memory);
| ^
C:\Users\apoor\Downloads\prj2-sol\vector_addition.c:44:10: warning: passing argument 1 of ‘free’ makes pointer from integer without a cast [-Wint-conversion]
44 | free(sum);
| ^~~
| |
| int
C:/msys64/ucrt64/include/stdlib.h:537:27: note: expected ‘void *’ but argument is of type ‘int’
537 | void __cdecl free(void *_Memory);
| ^

Build finished with error(s).

* The terminal process terminated with exit code: -1.
* Terminal will be reused by tasks, press any key to close it.