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

Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.79
exerenss
0 / 0 / 0
Регистрация: 11.12.2013
Сообщений: 34
29.05.2014, 20:45     Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted #1
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
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    const int n=10;
    int i,A[n],B[n],C[2*n],k;
    srand((unsigned)time(NULL));
    for (i=1;i<=n;i++)
    {
        A[i]=rand()%10;
        B[i]=rand()%10;
    }
    cout<<"A[i] = ";
    for (i=1;i<=n;i++)
        cout<<A[i]<<" ";
    cout<<""<<endl;
    cout<<"B[i] = ";
    for (i=1;i<=n;i++)
        cout<<B[i]<<" ";
    cout<<""<<endl;
    k=1;
    for (i=1;i<=n;i++)
    {
        C[k]=A[i];
        k++;
        C[k]=B[i];
        k++;
    }
    cout<<"C[i] = ";
    for (i=1;i<=2*n;i++)
        cout<<C[i]<<" ";
    cout<<""<<endl;
    system("pause");
}

Все работает, но когда я нажимаю Enter, чтоб закрыть окно программы мне выводит вот такую ошибку "Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted."
Как это исправить?
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jewbacabra
1787 / 1502 / 538
Регистрация: 24.04.2014
Сообщений: 4,203
29.05.2014, 20:47     Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted #2
индексы массива начинаются с нуля.
grikukan
61 / 61 / 21
Регистрация: 23.09.2012
Сообщений: 212
29.05.2014, 20:49     Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted #3
Замените
C[2*n]
на
C[2*n+1]
и будет Вам счастье

Добавлено через 25 секунд
Опередили
exerenss
0 / 0 / 0
Регистрация: 11.12.2013
Сообщений: 34
30.05.2014, 20:44  [ТС]     Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted #4
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
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    const int n=10;
    int i,A[n],B[n],C[2*n],k;
    srand((unsigned)time(NULL));
    for (i=0;i<n;i++)
    {
        A[i]=rand()%10;
        B[i]=rand()%10;
    }
    cout<<"A[i] = ";
    for (i=0;i<n;i++)
        cout<<A[i]<<" ";
    cout<<""<<endl;
    cout<<"B[i] = ";
    for (i=0;i<n;i++)
        cout<<B[i]<<" ";
    cout<<""<<endl;
    k=1;
    for (i=0;i<n;i++)
    {
        C[k]=A[i];
        k++;
        C[k]=B[i];
        k++;
    }
    cout<<"C[i] = ";
    for (i=0;i<2*n;i++)
        cout<<C[i]<<" ";
    cout<<""<<endl;
    system("pause");
}
вот я переделал код, но теперь мне выводит непонятный цифры перед последним массивом и выводит ошибку "Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted."

http://cs540101.vk.me/c618226/v61822...Qsd24ArtWA.jpg
ValeryS
Модератор
6373 / 4839 / 440
Регистрация: 14.02.2011
Сообщений: 16,039
30.05.2014, 20:53     Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted #5
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от exerenss Посмотреть сообщение
k=1;
C++
1
k=0;
Добавлено через 5 минут
Цитата Сообщение от exerenss Посмотреть сообщение
for (i=0;i<n;i++)
{
C[k]=A[i];
k++;
C[k]=B[i];
k++;
}
C++
1
2
3
4
5
for (i=0;i<n;i++)
 {
 C[i*2]=A[i];
 C[i*2+1]=B[i];
  }
Yandex
Объявления
30.05.2014, 20:53     Run-Time Check Failure #2 - Stack around the variable 'C' was corrupted
Ответ Создать тему
Опции темы

Текущее время: 17:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru