在某处定义一个宏
#define IDENTIFIER "identifier"
将此宏传递给snprint()
char buf[SIZE] = {0};
if (snprintf(buf, sizeof(buf), "%08X_%08X_%s.zip", i, j, IDENTIFIER) >= SIZE)
{
return "";
}
然而结果是:
10800000_00000A00_(null).zip
我不知道为什么它的值是'(null)'。我们知道,宏存储在编译器的符号表中,也许它需要一个指针或引用。 谁能解释一下呢?