ошибка arduino: ожидаемый инициализатор перед * токеном

#include <WProgram.h>
#include <EEPROM.h>

template <class T> int EEPROM_writeAnything(int ee, const T& value)
{
const byte* p = (const byte*)(const void*)&value;
int i;
for (i = 0; i < sizeof(value); i++)
EEPROM.write(ee++, *p++);
return i;
}

template <class T> int EEPROM_readAnything(int ee, T& value)
{
byte* p = (byte*)(void*)&value;
int i;
for (i = 0; i < sizeof(value); i++)
*p++ = EEPROM.read(ee++);
return i;
}

Привет сообщество,
Я получаю следующие ошибки для моего кода:

EEPROMAnything.h: в функции ‘int EEPROM_writeAnything (int, const T&) ‘:
EEPROMAnything.h: 6: ошибка: ожидается инициализатор перед маркером ‘*’
EEPROMAnything.h: 9: ошибка: ‘p’ не было объявлено в этой области
EEPROMAnything.h: в функции ‘int EEPROM_readAnything (int, T&) ‘:
EEPROMAnything.h: 15: ошибка: «байт» не был объявлен в этой области
EEPROMAnything.h: 15: ошибка: ‘p’ не было объявлено в этой области
EEPROMAnything.h: 15: ошибка: ожидаемое первичное выражение до маркера ‘)’
EEPROMAnything.h: 15: ошибка: ожидаемое первичное выражение до ‘void’

Не уверен, что мне не хватает в этом наборе. Буду рад обратной связи!
Спасибо

1

Решение

выяснил что не работает

 #include <WProgram.h>

должно быть вместо

 #include <Arduino.h>

спасибо за комментарии сообщества!

0

Другие решения


По вопросам рекламы [email protected]