cout给出运行时错误

Sho*_*hit 1 c++

#include "iostream"

using namespace std;

int main(int argc, char const *argv[])
{
    int n=100000;
    int cost=6;
    for (int i = 1; i <= n; ++i)
    {
        cout<<cost<<endl;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

编译并运行在ideone.com上的上述程序(使用SPOJ编译器的在线g ++编译器)会产生运行时错误.当cout注释掉该行时,程序将成功运行.有人能指出相同的原因吗?

Lor*_*olt 5

正如pts在他的评论中指出的那样,ideone.com对你可以打印的字节数有限制.如果将n更改为10000,则代码运行正常.

不会给出编译错误的最大n值是2 ^ 15 = 32768.

如果仔细观察,可以看到它终止于信号:25,SIGXFSZ.您可以查看此页面以了解信号的含义.

SIGXFSZ 25超出文件大小限制(4.2 BSD)