Форум программистов, компьютерный форум, киберфорум
Наши страницы

Ошибка сегментирования - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как сделать в игре крестики нолики? http://www.cyberforum.ru/cpp-beginners/thread804586.html
Нужно в игре сделать? что бы пользователь мог выбирать за кого играть за крестиков или за ноликов только против компьютера. Подскажите как? Вот у меня не большие наброски кода. //#include...
C++ Определить количество элементов последовательности натуральных чисел, кратных числу м и заключенных В промежутке от l до n Определить количество элементов последовательности натуральных чисел, кратных числу м и заключенных В промежутке от l до n. Запрещено создавать темы с бессмысленными названиями вроде "Помогите!",... http://www.cyberforum.ru/cpp-beginners/thread804583.html
C++ Создать функцию для работы с массивами
В функции обработки нажатия кнопки: - ввести размерность массива, - создать 3 двумерных динамических массива, - для каждого из 2 массивов вызвать функцию, которая заполнит эти массивы случайными...
C++ Программа, которая переводит арифметические выражения в postfix notation используя Stack
Помогите, пожалуйста, разабраться как написать программу, которая переводит арифметические выражения в postfix notation используя Stack. Input - это числа и арифм. выражения: Программа...
C++ UTF8 to GBK http://www.cyberforum.ru/cpp-beginners/thread804575.html
Нужно конвертировать строку UTF8 в GBK.. как это возможно?
C++ Заголовочные файлы Здравствуйте ув. Пользователи, У меня такой вопрос: Есть ли хорошие книги по заголовочным файла как правильно ими пользоваться... Просто раньше писал на Delphi а не так давно перешел на с++, весь код... подробнее

Показать сообщение отдельно
remouter
0 / 0 / 0
Регистрация: 03.06.2011
Сообщений: 15

Ошибка сегментирования - C++

10.03.2013, 14:14. Просмотров 506. Ответов 9
Метки (Все метки)

Добрый день, возникла проблема:
Вот программа, суть из исходного файла у слов удаляется окончание 's' (если оно присутствует), плюс даны слова исключения, которые программа пропускает. В некоторых случаях работает нормально, в других ошибка сегментации.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream>
#include <set>
#include <vector>
#include <fstream>
#include <stdexcept>
using namespace std;
int main(){
    set<string> set1;
    set1.insert("class");
    set1.insert("success");
    fstream input("in.txt", ifstream::in);
    if(!input)
              throw runtime_error("File doesn't exist");
    string word;
    ofstream output("out.txt", ofstream::out);
    input >> word;
    while (input >> word){
          cout << word << endl;
          output << word << " ";
          string::iterator iter = word.end() - 1;
          if (*iter == 's'){
                    set<string>::iterator it = set1.find(word);
                    if (*it != word){
                       word.erase(word.end() - 1);
                       }
                      cout << *iter << endl; 
          }
          
    }
    system("pause");
    return 0;
}
Если набор целочисленный или с плавающей точкой, все работает, если набор строк - ошибки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru