一段(跟胡闹一样的) C++ 代码

#include <iostream>

int main() {
    https://re.karlbaey.top
    std::cout << "WTF HAHA" << std::endl;
    return 0;
}

提问:这段 C++ 代码的输出结果应该是以下的哪一项?

0 投票人
答案
没有选之前不许看哦~

正确答案是 A。

以冒号 : 结尾的 https: 是 C++ 的标签,供给 goto 语句使用,不影响编译。

// 以及它以后的内容是注释,也不影响编译。

因此最终出现在输出的应该是 std::cout 引导的 WTF HAHA。

8 Likes

啊呀我忘记写编译器版本了……

不过都 2025 年了应该没人耍 VC6 了吧?

2 Likes

看到 // 就无视了 :melting_face:

3 Likes

虽然平常不怎么用’:',但是有//就说明了一切

3 Likes

WTF是真的!

2 Likes

实践是检验真理的唯一标准嘛。 :laughing:

1 Like

那岂不是说以后可以在代码里插入点这些玩意。反正不影响编译。 :face_savoring_food:

1 Like

后来者看着满文件的超链接无从下手了。 :laughing:

2 Likes

冒号的label在Java里也能用,嵌套循环可以在外面打一个label,内部循环可以直接break label;然后直接全跳出去
借鉴C++这一块

2 Likes

但说句实话真用 goto 的应该少之又少了。

毕竟这玩意就是屎山代码的老祖宗。 :rofl:

1 Like

为何不直接使用//注释掉呢佬友 :tieba_016:

1 Like


懂了,以后写C塞点私货进去 :distorted_face:

1 Like

我大一的时候还在写goto,就喜欢这种暴力的跳来跳去。不过当时写的是C

1 Like

又想起了当年配置vscode c++一直配置不好的时候 :sob:

被你发现了! :face_savoring_food:

C语言有一个冷知识语法糖,趋近于符号-->,现在已经很少有人知道了
a --> b表示a向b逼近,通常用在迭代操作的代码里
下面是例子:

#include <stdio.h>

int main()
{
    int i = 5;
    while (i  -->  0)//i趋近于0
    {
        printf("%d ", i);
    }
    return 0;
}

还可以在for语句里面使用,用法更高级一些

for (int x = 10; x  -->  3; )//x向3趋近,直到完成
{
    printf("%d ", x);
}
8 Likes

笑死,VSCode 真的识别成超链接了。 :rofl:

经典--和>两个运算符连起来 :distorted_face:

1 Like

这我真的没见过啊……好冷的知识。 :cold_face:

好吧就是 a-- > x 合并起来了。

3 Likes

其实是因为x--运算是有返回值的,返回值再判断> :distorted_face:

2 Likes