String als Funktion aufrufen - mit Parameter
-
Hallo,
wie ist es möglich einen String als Funktion aufzurufen und zusätzlich Parameter mitzugeben??
Gruss Waldewuff
-
in c++ waere es vergleichsweise einfach du koenntest eine map
nehmen.
in c, hm..
du koenntest sowas vielleicht mit 2 arrays simulieren.
in einem array speicherst du die strings in dem anderen die funktionen.#include <stdlib.h> #include <stdio.h> /* array mit den strings */ char* strings[] = { "test1", "test2" }; typedef int (*fkt)( int ); /* array mit den funktionen */ fkt funktionen[10]; int test1( int i ) { printf( "test1: i=%d\n", i ); return i; } int test2( int i ) { printf( "test2: i=%d\n", i ); return i; } int main() { funktionen[0] = test1; funktionen[1] = test2; funktionen[0]( 123 ); funktionen[1]( 456 ); return 0; }
dann musst du dir noch was basteln, was in dem array strings
den index eines gesuchten funktionsnamen sucht. diesen index
benutzt du dann bei dem array funktionen.