vabbò,col primo metodo:
enum{ intero,stringa}tipoArg;
void EEPROMVarSave(unsigned long Address, void *Var,tipoArg tipo) {
switch(tipo){
case intero:
byte WBuffer;
byte Size = sizeof(Var);
for (byte I = 0; I < Size; I ++) {
WBuffer = *((byte*)&Var + I);
EEPROM.write(Address + I, WBuffer);
break;
case stringa:
for (byte I = 0;; I ++) {
WBuffer = *((byte*)(Var + I));
EEPROM.write(Address + I, WBuffer);
if(WBuffer==0)break;//esco dal ciclo dopo aver salvato il carattere 0
}
break;
}
}
probab ci sono errori di sintassi..