C |宏与预处理器|问题14

以下程序的输出是什么?

null

#include <stdio.h>
#define macro(n, a, i, m) m##a##i##n
#define MAIN macro(n, a, i, m)
int MAIN()
{
printf ( "GeeksQuiz" );
return 0;
}


(A) 编译错误 (B) 极客问答 (C) 主要的 (D) 主要的 答复: (B) 说明: 该程序有一个预处理器,将“MAIN”替换为“macro(n,a,i,m)”。行“宏(n,a,i,m)”再次被main替换。需要注意的关键是 令牌粘贴运算符## 将参数连接到宏。 这个问题的小测验

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享