R6010 abort() has been called

Рейтинг: 1Ответов: 1Опубликовано: 18.12.2014

http://pastebin.com/g5dJAAYM#
Выходит вот такая ошибка в данном коде... Что это может быть?
Код сделан в Visual studio.

Ответы

▲ 1
  1. Определитесь, Вы пишите на Си или на С++. В коде дикая смесь. Код можно сократить на порядок, если писать на нормальных плюсах.

  2. Не нужно, без глубокого понимания, смешивать сишный способ ввода/вывода (puts, scanf, getchar) и плюсовый (std::cin, std::out). Это в большинстве случаев приводит к странному выводу.

  3. Строка strcpy_s(t[i],(strlen(b) + 1),b);. Я понимаю, что майкрософт понапридумывала своих функций, но старайтесь не использовать подобный новодел. Есть нормальная функция strncpy, которая имеет нужную функциональность.

  4. Абсолютно не понятно, какие данные хочет программа и что именно она с ними будет делать. Нужно хотя бы один пример входных данных и желаемый результат.

А вот указанная ошибка возникает как раз из-за того, что где-то неаккуратно обращаетесь к памяти. Но где... это сложно восстановить, я пример скомпилировал, но абсолютно не понимаю, что туда вводить.