C++ Qtを使用して.csvファイルを読み取る際に問題があります。CSVからdouble値を抽出すると予期しない結果が発生するC++
0.2345;0.567;1.2456;...
そして、これは、CSVファイルを読み込むためのコードである:ここではCSV形式です
void CSV::readCSV(std::istream &input, std::vector<double> &output) {
std::string csvElement;
while (std::getline(input, csvElement, ';')) {
output.push_back(stod(csvElement));
}
}
そして出力:
0.0000 0.0000 1.0000
出力が間違っています。あなたはこの問題について私を助けてくれますか?
コードをデバッグしようとしましたか? stod()が返す実際の値は何ですか? readCSV()に渡されるとベクトルは空ですか?あなたのロケールは '。'を使用しますか?小数点記号として? – roalz
@roalz氏によれば、デバッガは何を言っていますか?何を試しましたか? –
[最小限の、完全で検証可能な例](http://stackoverflow.com/help/mcve)を作成してください。表示する関数の使い方や、出力の印刷方法を含む。 –