#include <iostream>
#include <vector>
using namespace std;
int main(){
string a;
cin>>a;
int c;
vector<char> b;
for(int i = 0; i < a.length(); i++){
if(a[i] == '(') b.push_back(a[i]);
else if(a[i] == ')') b.pop_back();
}
if(b.size() > 0) cout<<"Неправильная скобочная последовательность!!!"<<endl;
else cout<<"Правильная скобочная последовательность"<<endl;
}
При вводе строки "()())" выдает ошибку: Ошибка сегментирования (стек памяти сброшен на диск).
Но я, вроде бы, понимаю почему.
И есть вопрос: как вместо этой ошибки вывести "Неправильная скобочная последовательность!!!" или как можно отследить данную ошибку?