Ho un paio di dubbi in proposito, visto che l' ide di arduino lavora in c++ e in c++ gli array nn sono altro che puntatori al primo elemento è corretto scrivere in questo modo:
funzione che processa un array di bytes e restituisce un altro array
byte* myfunz (byte array []){
byte buffer[sizeof(array)];
..... un bel po di roba
return buffer;
}
oppure
byte myfunz (byte array []){
byte buffer[sizeof(array)];
..... un bel po di roba
return *buffer;
}
o ancora
byte myfunz (byte array []){
byte buffer[sizeof(array)];
..... un bel po di roba
return buffer;
}
Secondo me la prima ma mi da errore oppure l'ultima ma da sempre errore di conversione; dopo di che
void Send (byte query[]){
byte aa = myfunz(query);
Serial3.write(aa,sizeof(aa));
}
pero pure li da errore "invalid conversion from 'byte*' to 'byte' e 'invalid conversion from 'byte' to 'const uint8_t*' "
mentre se faccio
void Send (byte quer[]){
byte aa = myfunz(quer);
int num = sizeof(aa);
Serial3.write(&aa,num);
}
che nn ha senso perchè mi invierebbe l'indirizzo di aa e nn il valore...........
Visto che l'array e creato all interno della funzione quando essa finisce anche l'array viene distrutto quindi ci si ritrova con nulla puntato!!

Non penso tocchi ogni volta lavorare su un buffer esterno oppure si??
Girovagando ho trovato un po di roba ma nn è applicabile qui.
Quella volta i tizzi che hanno pensato ste robe che hanno bevuto??