Вот что я делаю:Присвоить указатель на константные
const uint16_t LAYERS_RIGHT[TOTAL_LAYERS][NBROW][NBCOL] = {
{{c00, c10, c20, c30, c40, c50, c60},
{c01, c11, c21, c31, c41, c51, c61},
{c02, c12, c22, c32, c42, c52, c62},
{c03, c13, c23, c33, c43, c53, c63},
{c04, c14, c24, c34, c44, c54, c64},
{c05, c15, c25, c35, c45, c55, c65}}
/* blah blah */
};
const uint16_t LAYERS_LEFT[TOTAL_LAYERS][NBROW][NBCOL] = {
/* blah blah */
/* blah blah */
};
uint16_t *(LAYERS[TOTAL_LAYERS][NBROW][NBCOL]);
Моя цель попытаться сделать указатель на что либо правая структура или левая структура:
LAYERS = &LAYERS_RIGHT;
Компилятор говорит:
error: incompatible types in assignment of
'const uint16_t (*)[7][6][7] {aka const unsigned int (*)[7][6][7]}' to
'uint16_t* [7][6][7] {aka unsigned int* [7][6][7]}'
Как заставить мой код работать?
1) Там нет структуры. 'LAYERS_ *' - массивы. 2) Примечание. Все имена верхнего регистра должны использоваться для макросов и констант ** только **. 3) Ардуино ** не ** C! 4) Пожалуйста, возьмите книгу начинающих C++. Фрагменты полностью неправильны. 5) Код отсутствует. – Olaf
Ответ лежит на ошибке. – 2501
* Arduino не C! * Это стоит повторить. –