Compare commits

1 Commits

Author SHA1 Message Date
kevindkeogh
abaaf8757f Remove memory allocations for problem 40 2019-02-11 12:45:36 -05:00

View File

@@ -9,19 +9,8 @@
int split_digits(int* digits, int num) int split_digits(int* digits, int num)
{ {
int len = 0; int len = 0;
free(digits);
digits = malloc(1 * sizeof(int));
while (num > 0) { while (num > 0) {
len++; len++;
digits = (int*)realloc(digits, len * sizeof(int));
if (digits == NULL) {
printf("A memory error occurred.\n");
exit(1);
}
digits[len-1] = num % 10; digits[len-1] = num % 10;
num /= 10; num /= 10;
} }
@@ -32,17 +21,11 @@ int split_digits(int* digits, int num)
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
int* digits; int digits[7] = {0};
int len; int len;
int digit = 0, i = 0; int digit = 0, i = 0;
int prod = 1, num = 1; int prod = 1, num = 1;
digits = malloc(1 * sizeof(int));
if (digits == NULL) {
printf("A memory error occurred.\n");
exit(1);
}
len = split_digits(digits, num); len = split_digits(digits, num);
while (digit < MAX_NUM) { while (digit < MAX_NUM) {
@@ -62,6 +45,5 @@ int main(int argc, char** argv)
} }
printf("The solution is %d\n", prod); printf("The solution is %d\n", prod);
free(digits);
return 0; return 0;
} }