IOCCC.1984.anonymous.c.解析
2015-10-27 12:39
316 查看
anonymous.c:
http://ioccc.org/years.html#1984
整理一下:
i+++被解析为i++ +
传入read()函数的j和p始终为0和1
将read()函数之间带入main()
取消转义换行
最终:
int i;main(){for(;i["]<i;++i){--i;}"];read('-'-'-',i+++"hell\ o, world!\n",'/'/'/'));}read(j,i,p){write(j/p+p,i---j,i/i);}
http://ioccc.org/years.html#1984
整理一下:
int i; main(){ for(;i["]<i;++i){--i;}"];) read('-'-'-',i+++"hell\ o, world!\n",'/'/'/'); } read(j,i,p){ write(j/p+p,i---j,i/i); }
i+++被解析为i++ +
i["]<i;++i){--i;}"]相当于
"]<i;++i){--i;}"[i]由于每次i增1,该表达式作为for语句的条件即为“当
"]<i;++i){--i;}"[i]不为
'\0'时循环,在字符串常量结尾会有
'\0'因此条件相当于
i<=14”
'-'-'-'和
'/'/'/'char提升为int直接运算为0和1
int i; main(){ for(;i<=14;i++) read(0,i+"hell\ o, world!\n",1); } read(j,i,p){ write(j/p+p,i---j,i/i); }
传入read()函数的j和p始终为0和1
将read()函数之间带入main()
int i; main(){ for(;i<=14;i++) write(1,i+"hell\ o, world!\n",1); }
取消转义换行
最终:
int i; main(){ for(;i<=14;i++) write(1,i+"hello, world!\n",1); }
相关文章推荐
- 转载!!:网络协议学习导图
- 关于java命名规范及注释,并将javadoc的生成html
- Cocos2dx基础
- javascript(三)原型 原型链 Object.prototype
- UML基础概述
- 37-java数字猜大小
- HDU 5506(GT and set)
- Linux下的PCI总线驱动
- HDU 5506(GT and set)
- jquery 中js的总结问题
- android 如何导出jar包
- openwrt 常用命令
- Android之Handler详解
- 3.4 Queue via Stacks
- linux中Jetty的安装和配置
- 一个实例说明一个程序的编写步骤(Python语言)
- 依赖注入揭秘
- 端口重定向
- 在一个frame设置四个组件
- 在PYTHON中,用cx_Oracle连接ORACLE数据库简单示例