Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 15.01.2015
Сообщений: 7
1

Run time check failure #2 stack around the variable was corrupted

15.01.2015, 15:13. Показов 919. Ответов 6
Метки нет (Все метки)

Помогите пожалуйста найти ошибку, только начала писать код и уже не могу найти ошибку
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
33
34
35
36
37
38
39
40
41
42
43
44
45
void main()
{
    //руссификатор
    SetConsoleOutputCP(1251);
    SetConsoleCP(1251);
 
    //Ввод двух ключей
    char key1[3];
    char key2[3];
 
    cout<<"Введите ключ_1 -> ";
    cin>>key1;
    cout<<"Dlina="<<strlen(key1)<<endl;
 
    cout<<"Введите ключ_2 -> ";
    cin>>key2;
    cout<<"Dlina="<<strlen(key1)<<endl;
 
    const int razm=3;
    char shifr[razm][razm];
    for(int i=0; i<razm; i++){
        for(int j=0; j<razm; j++){
            shifr[i][j]='0';
        }
        cout<<endl;
    }
 
    for(int i=0; i<razm; i++){
        for(int j=0; j<razm; j++){
            shifr[preobr(key2[i])-1][preobr(key1[j])-1]='1';
            cout<<preobr(key2[i])<<" ---  "<<preobr(key1[j])<<endl;
        }
    }
    for(int i=0; i<razm; i++){
        for(int j=0; j<razm; j++){
            cout<<shifr[i][j]<<"\t";
        }
        cout<<endl;
    }
    getch();
}
int preobr(char sym){
    //Функция преобразует строку, состоящую из цифр в число(поэлементно, если массив), вычитая код из таблицы ASCII нуля = 48
    return (int)sym-48;
}
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.01.2015, 15:13
Ответы с готовыми решениями:

Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted.
Здравствуйте. Пишу две функции: ввод и вывод целочисленного массива, в конце программы вылетает...

Run-Time Check Failure #2 - Stack around the variable 'n' was corrupted
При вводе значение более трёх символов (это значение конечно можно регулировать) появляется...

Run-Time Check Failure #2 - Stack around the variable 'A' was corrupted
Определить класс вектор (одномерный числовой массив). В класс включить конструктор для определения...

Run-Time Check Failure #2 - Stack around the variable 'dt' was corrupted
Я понимаю что ошибка говорит о том что где-то вышел за диапазон массива, я перепроверил все циклы,...

6
6989 / 6028 / 2737
Регистрация: 14.04.2014
Сообщений: 25,792
15.01.2015, 16:13 2
Массив shifr не маловат? А если там 9 введут в key?
0
0 / 0 / 0
Регистрация: 15.01.2015
Сообщений: 7
15.01.2015, 16:21  [ТС] 3
Цитата Сообщение от nmcf Посмотреть сообщение
Массив shifr не маловат? А если там 9 введут в key?
я пока делаю конкретно для моей задачи, где слово длиной в 9 символов и это слово мне надо записать в таблицу 3х3
0
6989 / 6028 / 2737
Регистрация: 14.04.2014
Сообщений: 25,792
15.01.2015, 16:39 4
Пример входных и выходных данных приведи.
0
0 / 0 / 0
Регистрация: 15.01.2015
Сообщений: 7
15.01.2015, 16:50  [ТС] 5
Цитата Сообщение от nmcf Посмотреть сообщение
Пример входных и выходных данных приведи.
C++
1
2
3
4
5
6
7
8
9
10
11
int t=0;
    char str[11]={"Новый день"};
    //Находим пробел и склеиваем строку без него
    for(int i=0; i<10; i++){
        if((int)str[i]==32){
            t=i;
            for(int j=t; j<10; j++){
                str[j]=str[j+1];
            }
        }
    }
Это пример слова, пример ключа1=213, ключа2=312
0
6989 / 6028 / 2737
Регистрация: 14.04.2014
Сообщений: 25,792
16.01.2015, 14:06 6
И что получиться-то должно? Это какой-то вид шифрования или что?
0
0 / 0 / 0
Регистрация: 15.01.2015
Сообщений: 7
16.01.2015, 15:20  [ТС] 7
Цитата Сообщение от nmcf Посмотреть сообщение
И что получиться-то должно? Это какой-то вид шифрования или что?
да, это шифрование с двумя ключами. дело даже не в том, что должно получится. дело в том, с чего ошибка получается. пока я просто заполняю единицами. в оригинале шифровка заполняется символами строки, это я для примера взяла 1, чтоб разобраться в чем ошибка

Добавлено через 57 минут
нашла ошибку. ключи надо с размером на 1 больше было сделать
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.01.2015, 15:20

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted
Всем привет, начал недавно писать на с++, делаю программу по заполнению и сортировке элементов...

Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted
#include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; int main() { const int n=10;...

Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted
Добрый день подскажите что это означает и как исправить данное сообщение Run-Time Check Failure #2...

Run-Time Check Failure #2 - Stack around the variable '.' was corrupted
Сделал &quot;меню&quot; для работы со своим стеком. При вводе &quot;0&quot; выходит ошибка &quot;Run-Time Check Failure #2 -...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.