请高手帮忙分析输出(说明putchar的参数是什么意思)

f9941220 2006-04-11 11:12:22
int main(int argc, char* argv[])
{ int _ = 0;

for(--_; putchar(_++["J!Mpwf!Zpv \1"] - 1) ; )
;
}
...全文
98 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
bm1408 2006-04-11
  • 打赏
  • 举报
回复
强~
这样的代码太强了~!
谁敢用~~
jixingzhong 2006-04-11
  • 打赏
  • 举报
回复
所以,循环输出的是 J!Mpwf!Zpv \1这个串 减去 1 后对应的 ASCII 字符 ...

==============
看到了 I LOVE YOU 的字样 ...
花样果然不少,
楼主不是在泡MM吧 ~
jixingzhong 2006-04-11
  • 打赏
  • 举报
回复
参数 (_++["J!Mpwf!Zpv \1"] - 1)

J!Mpwf!Zpv \1 这个字符长,
其实处理的时候就是 这个串的首地址在起作用,
假设 s[] = "J!Mpwf!Zpv \1"

那么,
参数就成了: _++[s]-1 ==>(等价于) s[_++] - 1

69,364

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧