有没有办法取消字符串作为宏参数提供?我需要能够调用名称在字符串中的函数。像这样的东西:
void hello() {
printf("Hello, world!");
}
call_func("hello");
我将如何实现 call_func。它将位于一个#include
d 模块中,用于调用主 c 文件中的函数。如果有另一种方法可以做到这一点,名称不必在字符串中,但可以作为参数传递给可以的函数。这就是我的意思:
#define call_func(X) X()
void do_something(Some_kind_of_C_func_type i) {
call_func(i)
}
void hello() {
printf("Hello, world!");
}
do_something(C_FUNC(hello));