Чтобы ответить на мой собственный вопрос:
Работает нормально, как написано несколько раз выше.Проблема была в том, что я использовал Netbeans.Netbeans вызвал сбой сегментации при попытке запустить его.Запуск вне Netbeans дал ожидаемый результат.
Ничего плохого в коде, просто с Netbeans, как ни странно.
Так что все с той же ошибкой, попробуйте запустить его вне Netbeans.