Funktion aufrufen
-
Hi,
ich möchte mithilfe von scanf ein charfeld einlesen und dann damit eine funktion aufrufen. d.h. wenn ich z.b. test eingebe, soll die funktion test aufgerufen werden. geht sowas?
-
if (!(strcmp("test", eingabe))) test();
-
für sowas kann man sehr gut assoziative arrays verwenden. leider hat Standard C keine
Aber ne hashmap ist mit google ja schnell gefunden.
Dann kannst du als key den Namen der Funktion nehmen und als value einen Zeiger auf die Funktion - so geht das sehr schön und flexibel.
-
jo, und wie kann man es machen, dass er nicht erst vergleicht sondern direkt ausführt?
ich wollte nämlicht für alle meine funktionen sone zeile schreiben. das ist ja der springende punkt
-
ne, ein eval() wie in PHP gibt es nicht.
es geht eben nur über ein assoziatives array relativ leicht.
-
hm schade, naja dann versuch ichs halt anders