【发布时间】:2010-12-28 20:21:51
【问题描述】:
我最近遇到了这段代码,它可以编译,但运行时出现分段错误(g++)。 这是来自 topcoder 的原始链接 topcoder profile
#include <iostream>
int main = ( std::cout << "Hello world!\n", 42 );
这也编译
int main=0;
谁能解释一下这个程序发生了什么。使用 g++
【问题讨论】:
-
你认为最短的是什么?最短的 C++ 程序长度为 0 个字符。那是两个不同的程序吗?还是同一程序的 2 个部分?
-
这里有太多错误,我什至不知道从哪里开始。
-
这些都不是有效的程序。如果您的实现碰巧生成了一个可执行文件或允许其中任何一个运行,这是实现的不幸结果(以及您使用的语言本质上无法检查所有可能的错误条件的事实)。
-
我知道应该没有不好的问题,但这真的没用。
-
@John Dibling:我刚刚发布了这个问题,因为它来自排名第 121 位的 topcoder 成员
标签: c++