0 / 0 / 0
Регистрация: 24.09.2017
Сообщений: 11
1

Программа в режиме Debug работает правильно, а в Release выдает бред

26.09.2017, 13:05. Показов 850. Ответов 2
Метки нет (Все метки)

Сделал вот такую программу (она задаёт массив и при вводе 0 или "конце" массива выдаёт максимальное значение массива.):

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
#include <iostream>
#include <Windows.h>
#include <conio.h>
 
using namespace std;
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    int arr[15], i , max;
    max = arr[0];
    for (i = 0; i < 15; i++) 
    {
        cin >> arr[i];
        cout << " arr[" << i << "]" << "=" << arr[i] << endl;
 
        
        if (i == 14)
        {
            cout << "max= " << max;
        }
        if (arr[i] == 0)
        {
            cout << "max= " << max;
            _getch();
            return 0;
        }
        if (arr[i] > max) 
        {
            max = arr[i];
        }
 
        
    }
    _getch();
    return 0;
}


В "Release" выдает огромные цифры, например:
1
arr[0]=1
2
arr[1]=2
0
arr[2]=0
max = 1775223841

Буду благодарен если решите проблему.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.09.2017, 13:05
Ответы с готовыми решениями:

Не правильно работает программа (В ответе выдает бред)
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;iomanip&gt; using namespace...

Программа работает по разному в Debug'e и Release'e
Добрый День! Суть проблемы: есть две программы адекватно работающие в debug'e но в release'e есть...

Почему в Debug программа работает, а в Release нет?
Почему в Debug программа работает, а в Release нет?

Кодировка в режиме сборки Debug / Release
В проекте использую только Use Multi-Byte Character Set, то есть ASCII. В режиме сборки Debug все...

2
Модератор
Эксперт .NET
5817 / 4694 / 2940
Регистрация: 20.04.2015
Сообщений: 8,359
26.09.2017, 13:29 2
Цитата Сообщение от Ducal_Boar Посмотреть сообщение
C++
13
max = arr[0];
Здесь max присваивается неинициализированное значение, ведь arr[0] еще не введено.
Присвойте
C++
13
max = INT_MIN;
И не забудьте при этом подключить
C++
1
#include <climits>
0
0 / 0 / 0
Регистрация: 24.09.2017
Сообщений: 11
26.09.2017, 14:03  [ТС] 3
Спасибо!)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.09.2017, 14:03

Приложение работает в Debug, странно работает в Release и не работает при билде
Действия выполняются на эмуляторе Pixel 2. Android 9.0. Если я запускаю приложение с конфигурацией...

Debug работает, Release валится
написал программку - RSS-фильтр поскольку изначально была задумка получения информации о выходе...

Release работает, Debug - ошибка
Подскажите, товарищи. Есть код (взял с форума) : #include &lt;iostream&gt; #include &lt;fstream&gt;...

STM32. SD карта работает в release, но не работает в debug
Здравствуйте. У меня следующая проблема: SD карта инициализируется только в release сборке. Если...


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

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

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