#include
//DSGFJSJH
//#define SS() 1
int main()
{
#if kfgkasfga
printf("==========\n");
#endif
#if !(SS)
printf("aaaaaaaaaa\n");
#endif
return 1;
}
上面这段程序,最终编译通过,没有警告(gcc -Wall),输出了aaaaaaaaaa
所以#if 到底把那些混乱的字符当作了什么?0?要是不小心写错了变量名,
编译又不报错,那不是悲剧了?