Похоже, что вы пытаетесь выполнить задание
boxv0[0] = -0.5;
вне функционального блока, что недопустимо. Вне функциональных блоков допускаются только объявления (с инициализаторами или без них). Предупреждающие сообщения, которые вы получаете, связаны с тем фактом, что C традиционно подразумевает int
, когда тип не указан, поэтому вне функционального блока
someVariable = 5;
неявно вводится как int
, то есть приведенное выше определение эквивалентно
int someVariable = 5;
Когда компилятор видит
boxv0[0] = -0.5;
вне функционального блока, он замечает, что спецификация типа отсутствует, поэтому он принимает int
(который выдает предупреждение). Затем он понимает, что boxv0
был ранее объявлен как float
, поэтому выдает ошибку конфликтующих типов.
Если вам нужно инициализировать boxv0
вне функционального блока, сделайте это, как вы сделали для offset3d
, например,
float boxv0[3] = {
-0.5f, -1.0f, -1.5f
};