Привет!!! Народ, подскажи а так можно зделать и есть ли такая возможность у си. В общем есть переменная-функция. Меняя её текстовое значение и вызывается каждый раз разная функция, с именем которое мы присвоили. Что-то типа того. Но не макрос. Возможно ли это?
Существует вероятность того, что один хочет обладать, лайк, указателем на функцию? Код (Text): typedef int (__stdcall * FuncType)(char*); int __stdcall FuncA(char* text) { // do this } int __stdcall FuncB(char* text) { // do that } int main() { FuncType pFunc; if (black == white) pFunc = &FuncA; else pFunc = &FuncB; pFunc("Execute FuncA or FuncB"); }
Sol_Ksacap Да, что то типа этого кода, много функиий, и есть типа указателя или переменной, куда мы заносим имя функции а потом вызываем. только не работает чтот void *func(); void read() { } void write() { } func=write; func() - вызов Но не работает, компиль ругается
Код (Text): #include <stdio.h> int (*func)(); int func1() { return 42; } int func2() { return 1337; } int main() { func = &func1; printf("%d\n",func()); func = &func2; printf("%d\n",func()); return 0; } gcc 4.3.3, все нормально