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

Runtime Error - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Обьясните пожалуйста , что значат эти строки) http://www.cyberforum.ru/cpp-beginners/thread295831.html
1)#include <vcl.h> #pragma hdrstop USEFORM("cursach.cpp", Form1); WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { try { Application->Initialize(); ...
C++ Инициализация членов класса нулями Необходимо инициализировать члены класса нулями. class ID { public: int GetKey() { return key; } private: int id, key, qm; }; ID * object = new ID; http://www.cyberforum.ru/cpp-beginners/thread295816.html
Метод Эйлера дифуры 1 порядка C++
Помогите пожалуйста, не могу довести программу до ума в С. Решается дифференциальное уравнение типа y' = a*x+b*y #include "stdafx.h" #include <math.h> #include <conio.h> #include <stdio.h> ...
C++ Как правильно сохранить и потом считать структуру в бинарный файл
Есть структура struct card { int size; char *lear; int *name; }; Эта структура это карты игрока. Заполняем ее данными, у меня это количество масть и значение карты card CPU={6, new char,...
C++ Работа с указателями http://www.cyberforum.ru/cpp-beginners/thread295809.html
есть класс, в этом классе есть поля - указатели на структуры. я с помощью метода устанавливаю этим указателям значения, потом делаю чтение.запись данных в консоли (cin\cout). адреса, на которые...
C++ Можно ли установить указатель на конец файла, не подсчитывая его размер? можно ли как нибудь уствновить указатель автоматически на конец файла не подсчитывая его размер. например я делаю так SetFilePointer(myfile, sizeof "мои данные", NULL, FILE_BEGIN); "мои... подробнее

Показать сообщение отдельно
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
15.05.2011, 09:49  [ТС]
Во-первых, сделал код чуть более правильным, теперь валится уже реже
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
#include <iostream>
#include <sstream>
#include <ctype.h>
#include <conio.h>
int main(){
    //freopen("input.txt","r",stdin);
    //freopen("output.txt","w",stdout);
    std::string s,n,f;
    std::cin >> s;
    char c=0;
    if (isalpha(*s.begin())) s.insert(s.begin(),'1');
    for (std::string::iterator i = s.begin(); i < s.end()-1; i++)
        if (!isdigit(*i)&&!isdigit(*(i+1))) s.insert(i+1,'1'); //если идут 2 буквы подряд, ставит еденичку
    for (std::string::iterator i = s.begin(); i < s.end(); i++) { //ложит в f распакованную строку
        if (isdigit(*i)) n.push_back(*i); else {
            for (int j=0;  j< std::atoi(n.c_str()); j++)
                f.push_back(*i);
            n.clear();
        }
    }
    for (int i=39; i < f.size(); i+=40)   //делит строку на отрезки по 40 символов
            f.insert(i,1,'\n');
    std::cout << f;
    getch();
    return 0;
}
Во-вторых, ошибка из-за инсерта, но не понимаю, как ее исправить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
_Myt& insert(size_type _Off,
        size_type _Count, _Elem _Ch)
        {   // insert _Count * _Ch at _Off
        if (_Mysize < _Off)
            _String_base::_Xran();  // _Off off end
        if (npos - _Mysize <= _Count)
            _String_base::_Xlen();  // result too long
        size_type _Num;
        if (0 < _Count && _Grow(_Num = _Mysize + _Count))
            {   // make room and insert new stuff
            _Traits::move(_Myptr() + _Off + _Count,
                _Myptr() + _Off, _Mysize - _Off);   // empty out hole
            _Chassign(_Off, _Count, _Ch);   // fill hole
            _Eos(_Num);
            }
        return (*this);
        }
5ая строка
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru