输出文件中的奇怪空字符序列

时间:2013-01-28 11:02:33

标签: c++ file-io ofstream null-character

我将图形写成简单的文本文件格式(邻接列表)。在一个例子中,我发现生成的文件包含一个奇怪的很长的“NUL”字符行。

enter image description here

这些空字符可能来自哪里?他们是什么意思?

生成文件的代码是

void GraphIO::writeAdjacencyList(Graph& G, std::string path) {
    std::ofstream file;
    file.open(path.c_str());

    G.forallNodes([&](node v) {
        file << v;
        G.forallNeighborsOf(v, [&](node x) {
            file << " " << x;
        });
        file << std::endl;
    });
    INFO("wrote graph to file: " << path);
}

所有节点的迭代实现为:

template<typename Callback>
inline void EnsembleClustering::Graph::forallNodes(Callback func, std::string par) {
    assert ((par == "") || (par == "parallel"));
    int64_t n  = this->numberOfNodes();
    #pragma omp parallel for if (par == "parallel")
    for (node v = this->firstNode(); v <= n; ++v) {
        // call node function
        func(v);
    }
}

编辑:node类型只是int64_t

的typedef

0 个答案:

没有答案