初学者有关问题 关于预编译的有关问题

菜鸟问题 关于预编译的问题若定义constintNCT2则编译一下内容会出错,说len未定义#ifNCTintlen[NCT]#end

菜鸟问题 关于预编译的问题
若定义const   int   NCT   =   2;
则编译一下内容会出错,说len未定义
#if   NCT
int   len[NCT]   ;
#endif

但是将NCT定义改成#define   NCT   2
则编译能通过,请问是什么问题?

[解决办法]
const int NCT = 2;
这里NCT不是预编译,是一个变量,预编译的时候看不到它,所以报错。
#define NCT 2
这个可以