①无效数组大小
#define STATIC_ASSERT(ex)\
do{typedef int ai[(ex)?1:0];}while(0)
②switch语句的每个case子句都必须对应于不用的值
#define STATIC_ASSERT(ex)\
switch(0){case 0: case ex:;}
③位域必须具有非零长度
#define STATIC_ASSERT(ex)\
struct x{unsigned int v:ex;}
①无效数组大小
#define STATIC_ASSERT(ex)\
do{typedef int ai[(ex)?1:0];}while(0)
②switch语句的每个case子句都必须对应于不用的值
#define STATIC_ASSERT(ex)\
switch(0){case 0: case ex:;}
③位域必须具有非零长度
#define STATIC_ASSERT(ex)\
struct x{unsigned int v:ex;}