#ifdef和#if defined都可以用来判断单个宏是否被定义,而且由于#ifdef比较简洁,因而得到广泛的使用,那为啥还需要#if defined呢?
对于多个宏判断,就必须使用#if defined功能了,例如
#ifdef A && #ifdef B
上述这种定义方式是不正常的,而应该定义成 #if ( defined A) && (defined B)
综上所述,#ifdef是#if defined的简化版,只是判断单个宏是否被定义时可用#ifdef,其它复杂条件都得用#if defined。
版权声明:本文为u010990478原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。