Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 104
1

Debug assertion failed : string subscript out of range

14.10.2016, 17:17. Показов 1968. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброе время суток, просьба более опытных форумчан помочь с проблемой.
Работал в MVS 2010 на XP, систему пришлось переставить.
Сначала установил MVS2015, но не осилил, удалил ее (возможно не на 100% конкретно, но вроде удалил).
Поставил MVS2010 на Windows 7 x64. Сначала появилась такая ошибка: Сбой при преобразовании в COFF: файл недопустим или поврежден. Решил ее ответом уважаемого пользователя ranebull : Вкладка меню "Проект"/ Свойства: <проект>/Свойства конфигурации/Компоновщик/Включить инкрементную компоновку/"Нет (/INCREMENTAL:NO)"
Замечу, что ранее на XP такой ошибки не было.
Проект строится, но при отладке сразу же вылазит сообщение:
http://www.imageup.ru/img216/t... 567943.jpg
Пытаясь понять, что это, нажимаю Повтор.
Выдает следующее:
http://www.imageup.ru/img216/t... 567945.jpg
Во вкладке file такое значение: + file 0x013b1530 "d:\program files (x86)\microsoft visual studio 10.0\vc\include\xstring" const wchar_t *
Что с этим делать - честно говоря не представляю.
Код программы начинается вот так:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// toto.cpp: определяет точку входа для консольного приложения.
//
#include "stdafx.h"
#include <fstream>
#include <string>
#include <iostream>
#include <string.h> 
#include <conio.h>
#include <math.h>
#include <windows.h>
using namespace std;
 
string fileg()
{
  string s1="",s2="",s3="",stroka="вариантов";
  ifstream file("356h.txt",ios::in);
  getline(file, s1);
  s2= s2+s1+"                            ";
  file.close();
  return s2;
}
int elemmassiv(string s2)
Но думаю, что проблема не в коде.
Возможно есть смысл все удалить и переставить.
Если что-то несложное, прошу помочь.
Если надо ковыряться и смотреть, прошу помочь за оплату. Спасибо заранее
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.10.2016, 17:17
Ответы с готовыми решениями:

Debug Assertion Failed! Expression: string subscript out of range
Вот сегодня трудился целый день над игрой, и дошёл до момента когда начала появлятся выше...

Ошибка исполнения "vector subscript out of range / debug assertion failed"
Добрый день.. Помогите исправить ошибку.. Вот код: #include &lt;iostream&gt; #include &lt;vector&gt;...

Debug Assertion Failed Организация стека, string
Всем доброго времени суток, задание такое. Изменить структуру записи коллекции, используя в...

Debug Assertion Failed!
Доброго времени суток. Имеется код: #include &lt;iostream&gt; #include &lt;vector&gt; using namespace std;...

15
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
14.10.2016, 17:30 2
Цитата Сообщение от lanc3r Посмотреть сообщение
Но думаю, что проблема не в коде.
Отладчиком умеешь пользоваться? Найди место в коде, где эта ошибка возникает. Не похоже, что в показанном коде может возникнуть эта ошибка.

Добавлено через 1 минуту
Или больше кода покажи. Часто такая ошибка возникает, если к пустой строке по индексу обращаются.
0
6 / 6 / 3
Регистрация: 09.12.2015
Сообщений: 31
14.10.2016, 17:30 3
самый простой вариант - установить MVS2015 на текущую (?!) Windows 7 x64 и пользоваться ей, зная как работать с MVS2010 разобраться с основным функционалом не сложно, остальное придет со временем и желанием.
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
14.10.2016, 17:31 4
Скрины можно здесь прикреплять (управление вложениями), а то там ничего не видно.
0
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 104
14.10.2016, 17:34  [ТС] 5
Вот вложения
Миниатюры
Debug assertion failed : string subscript out of range   Debug assertion failed : string subscript out of range  
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
14.10.2016, 17:37 6
Кода больше давай.
0
6 / 6 / 3
Регистрация: 09.12.2015
Сообщений: 31
14.10.2016, 17:41 7
nd2, тут скорее всего дело не в коде, проблема в том что MVS2015 удалилась не корректно и MVS2010 пытается использовать либы от 2015той
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
14.10.2016, 17:45 8
Цитата Сообщение от chloroform Посмотреть сообщение
тут скорее всего дело не в коде
Может быть и не в коде, а может быть в коде. Для начала код нужно увидеть.
0
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 104
14.10.2016, 17:57  [ТС] 9
nd2, тут скорее всего дело не в коде, проблема в том что MVS2015 удалилась не корректно и MVS2010 пытается использовать либы от 2015той
скорее всего так и есть, как корректно удалить 2015 и 2010, чтобы снова поставить 2010?

Может быть и не в коде, а может быть в коде. Для начала код нужно увидеть.
К сожалению, код я вам показать не могу. Политика компании. Как я уже сказал, дело не в коде.
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
14.10.2016, 18:00 10
Цитата Сообщение от lanc3r Посмотреть сообщение
Как я уже сказал, дело не в коде.
Откуда уверенность? Раньше этот код собирался и работал без ошибок? Место нашёл в коде, где ошибка возникает?

Добавлено через 1 минуту
Цитата Сообщение от lanc3r Посмотреть сообщение
К сожалению, код я вам показать не могу.
А это тогда что означает?
Цитата Сообщение от lanc3r Посмотреть сообщение
Если надо ковыряться и смотреть,
Что тогда смотреть?
0
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 104
14.10.2016, 18:03  [ТС] 11
Во вкладке file такое значение: + file 0x013b1530 "d:\program files (x86)\microsoft visual studio 10.0\vc\include\xstring" const wchar_t *
При чем тут код программы? Если ошибка возникает сразу же при отладке при правильном построении???
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
14.10.2016, 18:05 12
Цитата Сообщение от lanc3r Посмотреть сообщение
как корректно удалить 2015 и 2010, чтобы снова поставить 2010?
Тут форум по С++, а не по студии. Для таких вопросов есть:
https://www.cyberforum.ru/visual-cpp/
https://www.cyberforum.ru/cpp-ide-tools/

Добавлено через 1 минуту
Цитата Сообщение от lanc3r Посмотреть сообщение
При чем тут код программы? Если ошибка возникает сразу же при отладке при правильном построении???
Это ошибка не компиляции, а времени выполнения. Компилятор выход за границу выделенной памяти не отслеживает. Правильное построение тут не поможет.

Добавлено через 47 секунд
...
Цитата Сообщение от nd2 Посмотреть сообщение
Место нашёл в коде, где ошибка возникает?
Или отладчиком пользоваться не умеешь?
0
Любитель чаепитий
3742 / 1798 / 566
Регистрация: 24.08.2014
Сообщений: 6,016
Записей в блоге: 1
14.10.2016, 18:13 13
Цитата Сообщение от lanc3r Посмотреть сообщение
К сожалению, код я вам показать не могу.
Ну и зачем тогда сюда пришли жаловаться?
Если Вы работаете в компании,
то и спрашивайте у тимлида своего или кто у Вас там.
А эта ошибка возникает,
когда обращаешься к несуществующим элементам массива,
так что ищите у себя в коде ошибку.
Можете воспользоваться отладчиком, чтобы увеличить скорость поиска.
0
Вездепух
Эксперт CЭксперт С++
11695 / 6374 / 1724
Регистрация: 18.10.2014
Сообщений: 16,068
14.10.2016, 19:23 14
Цитата Сообщение от lanc3r Посмотреть сообщение
При чем тут код программы? Если ошибка возникает сразу же при отладке при правильном построении???
Что за странные вопросы? "Правильное построение" никакой роли тут не играет. У вас ошибка времени выполнения в коде функции elemmassiv - выход за пределы массива. Однако код этой функции вы нам почему-то не показываете. Так о чем говорить?

То, что этот код где-то когда-то якобы "работал" никакой роли не играет. Скорее всего это было просто случайностью.
0
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 104
14.10.2016, 19:34  [ТС] 15
Извините, вы были правы. проблема была в коде...разрулил уже
0
6 / 6 / 3
Регистрация: 09.12.2015
Сообщений: 31
14.10.2016, 19:35 16
lanc3r, не надо удалять 2010 просто установи 2015 и к последней все апгрейты и все будет работать нормально, главное при установке 2015той не использовать 2010ю. а на вкладке свойств проекта можно выбирать нужную версию компилятора, была та же проблема ,решилась переустановкой.
0
14.10.2016, 19:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.10.2016, 19:35
Помогаю со студенческими работами здесь

Debug Assertion Failed
Ошибка. Не могу понять что не так. Как я понял с дебагера, проблема во втором освобождении памяти....

Debug assertion failed
Во время отладки вылазит такая ошибка,не могу понять в чём дело

Debug Assertion Failed C++
Здравствуйте. Не могу понять что не так. Выдает ошибку. Помогите разобраться и подправить. ...

Debug assertion failed
#include &lt;iostream&gt; using namespace std; class Employee { friend class Leader; private: char...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru