宏定义可变参数崩溃
定义了一个可变参数的宏。
输入变量时,就会崩溃。如果将该变量替换为一个整数值,可以正常运行。
不明白其中 原理,求大婶指点。
只有20分,不要嫌弃。
#include <stdio.h>
int main()
{
const int nLen = 2;
char szBuf[nLen+1] = {0};
#define SETFMT(width) "%0"#width"d"
#define SETCHNFMT(width) SETFMT(width)
printf(SETCHNFMT(nLen), nLen);
return 0;
}