###発生している問題
プログラミング初心者です。814行2列のデータファイルから値を読み込んでvector配列に格納したいのですが、Segmentation faultになってしまいました。
###該当のソースコード
C++
1#include <iostream> 2#include <cmath> 3#include <vector> 4#include <string> 5#include <fstream> 6 7int main() 8{ 9 std::vector<float> input; //データの値を格納する配列 10 int datanum = 814*2; //データの個数 11 12 std::ifstream fin; 13 14 fin.open("datafile.dat", std::ios::binary); 15 fin.read((char *)&input[0], datanum*sizeof(float)); 16 fin.close(); 17 fin.clear(); 18 19 std::cout << "checkpoint" << std::endl; 20 std::cout << input[0] << std::endl; 21 22 return 0; 23} 24 25```datafile.dat 260.0001 443.916 270.00010202 452.558 280.00010408 461.364 290.00010618 470.334 300.00010833 479.512 310.00011052 488.853 320.00011275 498.358 330.00011503 508.068 340.00011735 517.942 350.00011972 528.02 360.00012214 538.304 370.00012461 548.792 380.00012712 559.442 390.00012969 570.339 400.00013231 581.438 41 42###質問 43"checkpoint"は出力されるのですが、input[0]が出力されずSegmentation faultになってしまいます。原因を特定できず困っています。どうすれば解決するのでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/06 02:54