Элементы узлов в массиве не изменяются, распечатка всегда равна 0 для каждого элемента, почему это так?
double* knots; knots = (double*)malloc(sizeof(double) * numKeys); // Initializaiton for (int i = 0; i < numKeys; i++) { knots[i] = 0; } // assign value for (int i = 0; i < numKeys; i++) { knots[i] = -1 + i; printf("%d\n", knots[i]); }
Для печати парных символов используйте "%lf\n".(lf = long float)
"%lf\n"
Измените это:
printf("%d\n", knots[i]);
на это:
printf("%f\n", knots[i]);
Примечание: %f по умолчанию читает в два раза.В случае, если вы передадите float, сначала он будет преобразован в двойной.
%f
float