Я пишу фрактальный рендеринг Мандельброта на Java с использованием OpenCL.В моем коде ядра мне нужно привести int
к float
.Но когда я говорю printf("%d", sizeX, "\n%d", (float) sizeX, "\n\n");
(sizeX
- это int), я получаю следующий результат в консоли:
512
0
И действительно, sizeX
должно быть 512, но для того, чтобы сделать дальшерасчеты, мне нужно, чтобы это было число с плавающей запятой.Кто-нибудь знает, почему он всегда превращается в 0, когда я пытаюсь разыграть его?
РЕДАКТИРОВАТЬ: Я также пытался преобразовать его, выполнив float fSizeX = 0.0f + sizeX
, но это тоже не сработало.