Funktion mehrere Werte zurück geben

Dann zeige ich dir mal die teure Version

#include <Streaming.h> // die Lib findest du selber ;-)
Stream &cout = Serial; // cout Emulation für "Arme"

struct Datensatz
{
 uint8_t rainPixel[12];
  int8_t changer[4];
  
};

Datensatz readRainPixel(uint8_t /*site*/)
{
  Datensatz d; 
  for(uint8_t i = 0; i < 4; i++)
  {
    for(uint8_t j = 0; j < 3; j++)
    {
      d.rainPixel[i * j] = 1 + i + j;
    }
    uint8_t upsite = 1;
    d.changer[i] = upsite + i;
  }
  return d;
}


template<typename T>void zeigsMir(T &array)
{
  for(auto data : array)cout << data << endl;
}


void setup()
{
  Serial.begin(9600);
  cout << F("Start: ") << F(__FILE__) << endl;

  Datensatz d = readRainPixel(42);

  
  cout << F("rainPixel: ") << endl;  
  zeigsMir(d.rainPixel);
  cout <<  endl;
  
  cout << F("changer: ") << endl;  
  zeigsMir(d.changer);
  cout <<  endl;
}

void loop()
{
}

1 Like