史上最奇葩的C++
作者:互联网
没错,C++超级,超级,超级奇葩。
请看:
int i = 50;
(++i) += (i++);
谁能告诉我这段代码执行完后i是多少?
1:辗转自加法
这是能编译通过的:
int i = 50;
printf("%d", i++ + ++i);
return 0;
另外一段编译通过的代码:
int i = 50;
printf("%d", i ++ + ++ i);
return 0;
欢迎收看考古片《零散的加号》!
int i = 50;
printf("%d", i ++ + ++ i + ++ i + i ++);
return 0;
2:位运算大法
可曾听说过辗转相除法?
int gcd(int a, int b) {
while (b ^= a ^= b ^= a %= b);
return a;
}
我估摸着有95%的人都不知道!
3:chen_zhe AK IOI!
亲测可过A+B Problem。
#define A int main
#define Code ()
#define Monkey {
#define Called int a, b;
#define chen_zhe scanf("%d %d", &a, &b);
#define AK return printf("%d", a + b) & 0;
#define IOI }
A Code Monkey Called chen_zhe AK IOI;
4:风格已被摧毁
亲测可过A+B Problem。(+1)
int main
() { int
a, b; scanf
("%d %d", &
a, &b);
printf("%d",
a + b); return
0; }
5:内——联——汇——编
又一个A+B。
__asm {
mov eax,a;
mov ebx,b;
add eax,ebx;
}
6:字符串下标
putchar(3["abcdefg"]);
以上代码均可编译通过,须补充其他部分。
再————————————————见!
博主用心写出来的文章,白嫖的人到底心不心疼啊,
走前给个免费的赞吧!
标签:return,int,50,C++,++,奇葩,printf,史上,define 来源: https://www.cnblogs.com/AProblemSolver/p/16398536.html