| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1176 人关注过本帖
标题:第一次接触混乱代码,求大神指导解释
只看楼主 加入收藏
黎芷晓清
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-3-4
结帖率:0
收藏
已结贴  问题点数:20 回复次数:13 
第一次接触混乱代码,求大神指导解释
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);}

输出为:
hello,world!

</i;++i){--i;}"];read('-'-'-',i+++"hell\
搜索更多相关主题的帖子: hello world write 
2014-03-06 13:51
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:7 
很低级的一个混乱代码,因为其混乱的部分既低级又无意义,还特别明显
比如 '-'-'-' 和 '/'/'/',有啥意义?read(0,char*,1) 同样如是。
整个代码就像个“冷笑话”

去除那些故弄玄虚的部分,变为
程序代码:
#include <stdio.h>

int main()
{
    for( int i=0; "hello, world!\n"[i]; ++i ) // "可填任意字符串,只要其strlen等于strlen(下面那个字符)就行"
        putchar( "hello, world!\n"[i] );

    return 0;
}

2014-03-06 14:27
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:7 
楼上的,你看懂吗?

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2014-03-06 14:38
黎芷晓清
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-3-4
收藏
得分:0 
回复 2楼 rjsp
read(j,i,p) write(j/p+p,i---j,i/i);   read 中的 j,i,p 是什么意思
2014-03-06 14:48
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
玩混乱代码实际上类似做一种思维拓展训练,玩的不是程序算法有多么高级或高效.

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2014-03-06 14:48
黎芷晓清
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-3-4
收藏
得分:0 
回复 5楼 Knocker
我觉得也是,通用的都是规范代码,混乱代码用的少,估计去参加个混乱代码大赛,才去研究它了。
2014-03-06 14:52
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
玩这个,必须得先去看熟C98

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2014-03-06 15:07
pangshch
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:2
帖 子:443
专家分:1966
注 册:2013-4-9
收藏
得分:7 
我没全看懂, 把我看的说出来请高手指教一下:
程序代码:
// 分行断开好看一点.
int i;

main()
{                                                        // for循环中, 语句1没有, 语句2是:i["]<i;++i){--i;}"]; 语句3是:read('-'-'-',i+++"hello, world!\n",'/'/'/')

    for(;i["]<i;++i){--i;}"];read('-'-'-',i+++"hell\    // 从这里开始,  i是全局变量, 值是0, C中值为0可以做指针,i["]<i;++i){--i;}"]这句,等于i[字符串], 等于i指向了方括号中的字符串首地址 
                                                        // 字符串有14个字符, for循环14次, 循环体是空语句, 语句3是read()的函数调用.
                                                        // 再说read()函数调用, 第一个参数是'-'-'-', 等于('-') - ('-') 等于0, 第二个参数(i++)这里i自增, 循环的结束条件, 同时把
                                                        // 字符串hello, world!\n传递给read()函数, 第三个和第一个一样, 两边加上括号, 结果是1.
o, world!\n",'/'/'/'))
    ;
}

read(j,i,p)  // j, i, p是主函数中for语句3 的函数调用的三个参数, j=0, i是字符串指针, p=1;
{write(j/p+p,i---j,i/i);}  //  write()函数是库函数, 第一个参数是1(应该表示标准输出), 第三个参数是1(表示一次输出一个字符), 

所以程序是以库函数write()输出, 一次输出一个字符,
i++, i--的计算有点乱, 有不对的地方请指教.

[ 本帖最后由 pangshch 于 2014-3-6 16:21 编辑 ]
2014-03-06 16:17
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
你说得都没有问题,能不能按原来程序的逻辑把它简化一下?就是规范书写

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2014-03-06 21:52
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
j,p为什么没有见定义?两对花括号不是错位的么?

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2014-03-06 22:12
快速回复:第一次接触混乱代码,求大神指导解释
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.044684 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved