Hallo,
ich bin auf der Suche nach einer Möglichkeit, Funktionen in C zur Laufzeit durch Strings zu rufen.
Das heißt, ich hab ein fertig-gelinktes Programm, geb einen String ein, und will dann gegebenenfalls einen Funktionspointer zurück, den ich dann rufen kann.
Hat einer Ahnung davon?
ToBiaS
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
Hallo,
ich habe einen Vorschlag:
erzeuge eine Tabelle, in der zu jedem möglichen String ein Pointer auf eine Function gespeichert ist (zweidimensionales Array, aber ist recht unflexibel). Dann vergleichst Du Deine Eingabe mit den Einträgen im Array und springst anschließend in die entsprechende Function.
Ist zwar umständlich, geht aber
Jaaa,
aber eben das will ich nicht machen, da ich die Namen der Funktionen zur Kompilierzeit noch nicht kenne, weil z.B. Plugins erst zur Laufzeit geladen werden ?!?
ToBiaS
Ach so,
wenn mich nicht alles täuscht, haben PlugIns alle die selbe Form für ihren Code, also einen bestimmten Namen, der sie anmeldet, einen zum Ausführen etc.
Wie es genau funzt, weiß ich nicht, aber bei Planet-Source-Code gibt es bestimmt einige Beispiele, wie man PlugIns und deren Schnittstellen programmiert.
Vielleicht hilft das weiter...
Danke erstmal !
Danke erstmal !