как название предлагает ... Мне нужно использовать плавающие точки в качестве индексов массива, но компилятор GCC выплеснул ошибку.Индекс массива в C, он должен быть целым числом? Может ли это быть плавающей точкой?
В принципе, у меня есть математическая функция F (x, t), где функция имеет переменные x и t. Проблема, с которой я сталкиваюсь, заключается в том, что я пытаюсь прирастить x и t в типе float, чтобы я мог вычислять разные значения для функции в разных x и t. Поэтому, естественно, я бы два для петель:
for (x = x_min; x < x_max; x += dx) {
for (t = t_min; t < t_min; t += dt) {
f[x][t] = 10*x + 10*t; // Over simplified.. but you get the idea
}
}
// And then perform some fourier transform
fft(f[x][t], 256, 1);
Так да, именно поэтому мне было интересно, если это возможно, чтобы получить плавающей точки в качестве индекса массива.
Можете ли вы дать более подробную информацию о том, что вы хотите сделать? –
Может быть, вы ищете словарь вместо массива? Даже в этом случае число с плавающей запятой является плохой идеей для ключа. – 6502