C ++分段错误令人困惑{CLOSED}

时间:2015-12-18 06:20:31

标签: c++ segmentation-fault

我知道Seg Sault是由访问不属于您的数据引起的,但我不明白为什么这一小部分代码为9X9 2d数组赋值并打印返回Seg Fault。请帮忙! 代码如下所示:

using namespace std;
#include <iostream>
#include <string>
const int Height = 9;
const int Width = 9;
string output = "|";
string topBoard[Height][Width];

int main() {
    for (int i = 0; i < Height; i++) {
        for (int ii = 0; ii < Width; ii++) {
            topBoard[i][ii] = "empty";
        }
    }
    for (int ii = 0; ii < Height; ii++) {
        cout << "-----------------------------------------------------------------";
        output = "|";
        for (int i = 0; i < Width; i++) {
            output = output + topBoard[ii][i] + "|";
        }
        cout << output;
        }
        return(0);
}

输出:

分段错误

使用代码139退出流程

任何人都知道为什么会发生这种情况?

编辑:我使用cloud9如果有人想要查看它,那么就可以在任何地方处理你的东西。

进一步编辑: 这是包含所有修改的代码:

bytes: 457
icon: "https://www.dropbox.com/static/images/icons64/page_white.png"
isDir: false
is_dir: false
link: "https://dl.dropboxusercontent.com/1/view/bu98444xdbv0iz04/Example.txt"
name: "Example.txt"

1 个答案:

答案 0 :(得分:-3)

此代码在Visual Studio 2013中运行得非常好。只有更改是最后一个分号需要在return语句之后而不是在}之后。这是输出:

-----------------------------------------------------------------|empty|empty|em
pty|empty|empty|empty|empty|empty|empty|empty|----------------------------------
-------------------------------|empty|empty|empty|empty|empty|empty|empty|empty|
empty|empty|-----------------------------------------------------------------|em
pty|empty|empty|empty|empty|empty|empty|empty|empty|empty|----------------------
-------------------------------------------|empty|empty|empty|empty|empty|empty|
empty|empty|empty|empty|--------------------------------------------------------
---------|empty|empty|empty|empty|empty|empty|empty|empty|empty|empty|----------
-------------------------------------------------------|empty|empty|empty|empty|
empty|empty|empty|empty|empty|empty|--------------------------------------------
---------------------|empty|empty|empty|empty|empty|empty|empty|empty|empty|empt
y|-----------------------------------------------------------------|empty|empty|
empty|empty|empty|empty|empty|empty|empty|empty|--------------------------------
---------------------------------|empty|empty|empty|empty|empty|empty|empty|empt
y|empty||empty|empty|empty|empty|empty|empty|empty|empty|empty||----------------
-------------------------------------------------|||empty|empty|empty|empty|empt
y|empty|empty|empty|empty|