我想知道是否有一種方法可以使用字符串化編譯器指令字符串整數變量。 我嘗試使用:isoa替代存在使用編譯器指令宏
#define stringize(a) #a
#define h(a) stringize(a)
#define g(a,b) a##b
#define f(a,b) g(a,b)
int main()
{
int num = 1024;
printf("%s=%s\n",stringize(h(f(1,2))), h(f(1,2))); //1. h(f(1,2))=12
printf("%s=%s\n",h(h(f(1,2))), h(f(1,2))); //2. "12"=12
printf("%s=%d\n", h(num),num); //num=1024
return 0;
}
,以便在stringize宏添加另一級(#1)可以使取代發生第一然後將其放置在代碼(#2),在類似的方式可變量來在編譯替換與價值的時間。 我的意思是說如果var = value;那麼是否有某種方式可以將some_macro(var) - > 字符串化爲「value」?