Wpis z mikrobloga

#programowanie #cpp #arduino

Siemcia, mam problem.

W jaki sposób wywołać funkcję o nazwie zapisanej w stringu?

Dokładniej: obsługę dwurzędowych fontów realizuję poprzez funkcje, np: http://wklej.se/f0e7

naciskając odpowiednie przyciski tworzy mi się string z cyframi wewnątrz, np. "324521".

Żeby wypisać stringa, wystarczy że zrobię lcd.print(string);, ale wtedy stringa wypisuje mi na wyświetlacz korzystając z defaultowego, nieedytowalnego fontu. W jaki sposób porozdzielać tego stringa tak, żeby każda cyfra wywoływała inną funkcję do określonej cyfry?
  • 10
  • Odpowiedz
@vifon_pikantny: Nie pamiętam jak to było ze wskaźnikami na funkcje, ale jeśli tak, jak myślę, to zapisz je w tablicy i wywołuj x-owy argument z tej tablicy. Tak bym to widział gdyby to wszystko działało tak jak mi się wydaje, że działało :< przynajmniej zawsze masz jakiś trop czego szukać :D
  • Odpowiedz
@vifon_pikantny: W ramach wyjaśnienia o co mi chodziło, kompilator może zrobić coś takiego jak opisano w tym kursie:

Jest jednak jedna ciekawa sprawa: jeśli wartości poszczególnych przypadków case są zbliżone (coś w stylu 1, 2, 3 a nie 1, 20, 45), to możemy posłużyć się tablicą skoków (ang. jump table).
  • Odpowiedz