缺少return语句不会产生错误

时间:2014-03-05 03:16:51

标签: c++ segmentation-fault return

这只是一个好奇的事情,但我有以下代码。我正在递归地向链表添加元素。这段代码非常好用。

但是当我从insert函数中删除return语句时,它不会抛出错误。程序编译,当我运行它时,我得到一个“分段错误”。

我发现这很奇怪。丢失的return语句不应该产生错误吗?

只是想知道它为什么不会:

Node* insert(Node* node, int values[]) {
    for (int i=0; i < 9; i++) {
        insertRecursively(node, values[i]);
    }
    return node;
}

int main() {
    int a[] = {1,2,3,4,5,6,7,8,9};  
    node = insert(node, a);
    print(node);
    return 0;
}

0 个答案:

没有答案