'Inserting a number into dynamic array in C
I am a new to C and I need to make a function that inserts a number to a 2D dynamic array depending on what is its last number in octal representation. I tried doing something like this. Function generating an array:
void genArr(int m, int n, unsigned int** arr) {
arr = (unsigned int**)malloc(m * sizeof(unsigned int*));
for (int i = 0; i < m; i++) {
arr[i] = (unsigned int*)malloc(n * sizeof(unsigned int));
}
}
Function to insert numbers:
void insertToArr(unsigned int** arr) {
unsigned int num;
printf("Enter a number: \n");
for (int i = 0; i < 100; i++) {
scanf("%d", &num);
if (num != 0) {
switch (num % 8) {
case 0:
break;
case 1:
arr[1][i] = num;
break;
case 2:
arr[2][i] = num;
break;
case 3:
arr[3][i] = num;
break;
case 4:
arr[4][i] = num;
break;
case 5:
arr[5][i] = num;
break;
case 6:
arr[6][i] = num;
break;
case 7:
arr[7][i] = num;
break;
}
}
else if (num == 0) {
break;
}
}
}
But I keep getting exception error:
Unhandled exception at 0x00007FF630C019DE in App4.exe: 0xC0000005: Access violation reading location 0x0000000000000010.
I'm stuck and don't really know what is wrong.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
