#define M int main(
M)
是什么意思?
M是这个宏的名字,后面那一段是它代表的代码
M相当于int main(
定义一个宏 M int main( 后,M就等价于int main( ,在预编译阶段直接把M进行字符串替换,所以M)等价于int main()
#define M int main(M)令M等于“int argc, char *argv[]”等价于int main(int argc, char *argv[])
有参数的main函数,不要也可以的,define有变量字符串替换,和变量函数替换两种,都是原模原样的替换。我是这样理解的,又不准确的地方见谅。