今天小呜看到一张图
是曾经某校的 14 级软件工程的男生,给同校妹子做了一个条幅,内容是:
for ( int i=0; i<forever; i++ ) ; printf ( "I Love My Girl" );
为了看的更清楚一点,我们把上面的代码整理出来,代码结构如下
站在程序员的角度,我们可以很容易的看出来这个条幅想表达的是什么,意思就是说:我会爱我的女孩直到永远。
But!!!作为一个程序员,考虑到程序的严谨性,我们认真分析一下。
首先,forever变量都没有定义,程序怎么能运行下去呢
然后,在for循环后出现了一个分号是什么意思呢?软院的男生难道不知道,如果加了分号,相当于循环是没有输出语句的么,如果forever变量定义成无限大,那么“I Love My Girl”这句话估计也是永远没机会说出口了。
当然啦,这仅仅是站在程序员的立场去看问题的,网上还是有一些神评论的,我们可以一起看看
结果引发程序员的一片热议呀。小呜摘选了部分评论:
@在寧小王爷:实力分号,活该单身
@大唐UV:1.多了分号;2.用while(true) 更简洁
@于茜Cynthiaaaaa:回复@-_-玖-_-:首先forever没有定义 编译错误 其次for循环之后的分号 导致了for那一句一直死循环 光占cycle不干事 所以根本print不出来 哈哈哈哈哈哈 想骗我们cs的女汉子 不可能~
@朱漾:装逼失败!!! 手残多打个分号,还可能编译错误
@八百备胎奔北坡:循环到forever,也说不出我爱你
@光子矩阵:for的分号给满分
@FRANCiS-WU:error:forever not defined
@冷场大师杜秋水:error C2065 : 'forever' : undeclared identifier
@笨皮筏子K:这尼玛这分号,注孤生吧你们
@眼前飘过好故事:forever没定义,程序错误
@万事屋______:forever转换为ascii码后,是有尽头的。
@Vincent_Jac:??????永远说不出口的我爱你?
@HUC小趙:int forever = 0;
@-_-玖-_-:就没人发现girl是单数嘛………
@全栈技术分享:估计你们那些能看出来错误的都是单身狗吧。
@古怪的松鼠:“我宁愿跳进一个forever的死循环,有不会说出我爱你。”
@ideawu:这就是装逼不写花括号的坏处!
@杜昶旭:哈哈……这个故事告诉我们,不好好学习,想表白都没戏
@12162E495C1ACF37: 简直不知道是真自黑还是在声明我们就要注孤生,讲真这种弱智水平的代码写标语太low了看着real尴尬……不如说标语我就觉得很尴尬
@孙明明_SmarterChina: 这个是正解。标语是 爱在心中口难开 的c++ 翻译。
@Leonhard_chw: 其实表达的是羞涩的工科生一辈子都说不出这么直白的情话[哈哈]我爱你永远留在自己的心间
@马少平THU: 显然是女生节不出个标语过意不去,出吧又不能违心,只好。。。
对于这串代码,你怎么看?