是否有任何方法可以對字符串進行unstringify作爲宏參數?我需要能夠調用名稱是字符串的函數。像這樣:C使用宏進行Unstringification
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));
函數指針正是我想要的!謝謝。 – None 2010-08-28 20:41:59