Я могу инициализировать float32x4_t как это:
const float32x4x4_t zero = { 0.0f, 0.0f, 0.0f, 0.0f };
Но этот код совершает ошибку Несовместимые типы в инициализаторе:
const float32x4x4_t one =
{
1.0f, 1.0f, 1.0f, 1.0f,
1.0f, 1.0f, 1.0f, 1.0f,
1.0f, 1.0f, 1.0f, 1.0f,
1.0f, 1.0f, 1.0f, 1.0f,
};
float32x4x4_t 4x4 матрица, созданная как:
typedef struct float32x4x4_t
{
float32x4_t val[4];
}
float32x4x4_t;
Как я могу инициализировать эту структуру константы?
const float32x4x4_t nameOfVariableHere =
{{
{1.0f, 1.0f, 1.0f, 1.0f},
{1.0f, 1.0f, 1.0f, 1.0f},
{1.0f, 1.0f, 1.0f, 1.0f},
{1.0f, 1.0f, 1.0f, 1.0f}
}};
Первый уровень скобок предназначен для структуры.
2-й уровень - для массива float32x4_t
.
Третий уровень предназначен для самого float32x4_t
.