Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C++, pole konstant, předání parametrů, jak na to?

Ahoj.... mám v tom hokej, přímo NHL...
potřebuju udělat něco takovýho:


const char pole1[] PROGMEM={1,2,3,4,5};
const char pole2[] PROGMEM={6,7,8,9,0};
const char pole3[] PROGMEM={a,s,d,f,g};

void ctipole(int pole) {
  for(byte i=0; i<5; i++) {
    byte hodnota=pgm_read_byte(&pole[i]);
    //nějaké další akce....
  }
}

int main(void) {
  ctipole(*pole1);
  ctipole(*pole2);
  ctipole(*pole3);
}   

kompilátor mě s tím posílá do prdele a já nevím jak to udělat, kde dát *, &, kde dát int nebo byte nebo co vlastně...
Když to napíšu takhle:


....
void ctipole() {
  for(byte i=0; i<5; i++) {
    byte hodnota=pgm_read_byte(&pole1[i]);
    //další akce...
  }
}

tak to chodí. Jenže to bych musel psát tři podprogramy pro jednu a tu samou věc, která se liší jen ukazatelem na pole konstant

Jak 100hoven?

Odpověď na otázku

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny