void binarysearch(string key, vector<string>& f2){
sort_vector(f2);
int mid = 0;
int left = 0;
int right = f2.size();
bool found = false;
while (left < right){
mid = left + (left+right)/2;
if (key > f2[mid]){
left = mid + 1;
}
else if(key < f2[mid]){
right = mid;
}
else{
found = true;
left = right;
}
}
cout << "out of while loop" << endl;
if (found == true){
cout << "YES: " << key << endl;
}
else{
cout << " NO: " << key << endl;
}
found = false;
}
これを実行すると、自動的に終了し、行番号が指定されていない「セグメンテーション違反」と表示されます。それは何を意味し、なぜこの障害が発生するのですか?
前もって感謝します