我遇到了以下程序,它编译时没有错误甚至是警告:
int main(){
<:]{%>; // smile!
}
Run Code Online (Sandbox Code Playgroud)
程序做了什么,笑脸表达是什么?
我找到了这个C代码示例,我绝对感到困惑:
#include <stdio.h>
#define M(a,b) a%:%:b
main()
{
int a=1, b=2, ab[]={10,20}, c;
printf( "%d", M(a,b)<:a:> );
printf( "%d", M(a,b)<:a:>?a:b );
printf( "%d", c=M(a,b)<:a:>?a:b );
}
Run Code Online (Sandbox Code Playgroud)
有人可以解释这应该做什么吗?它甚至没有在Visual Studio中编译,但我在线运行(在ideone.com上)并打印2011,这也增加了混乱.