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

Прекращена работа программы proj.exe - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Уже 2 года не могу установить c++ http://www.cyberforum.ru/cpp-beginners/thread947534.html
Ребят нужно работать на 2010 версии, но при установке на этапе VC 9.0 во всех версиях возникает или ошибка или до бесконечности зависает установка, мне пришла в голову мысль - можно установить на нетбуке и с него на комп скинуть, и вот я перенёс абсолютно все файлы c++ и тут ошибка: Отстутсвует один или несколько файлов, переустановите программу. Моя ошибка очень часто встречается не только у...
C++ Не вводится int в функции класса Помогите пожалуйста... Я хочу сделать Свой класс, в котором будут функции, одинаковые по названию, одинаковые по типу, но разные по водимым параметрам. Т.е. что Я хочу сделать... Вот, у Меня есть некий класс: #include "stdafx.h"//В этот файл, добавляем #include <locale.h> #include <stdio.h> #include <Windows.h> http://www.cyberforum.ru/cpp-beginners/thread947532.html
C++ Задание "Заказ пиццы" (на английском языке)
Здравствуйте, уважаемые Программисты. Я учусь на первом курсе, поэтому я еще новичок. Прошу вашей помощи в модификации программы. Тут у меня программа на английском. Задание таково: Я написал программу самостоятельно, и вот, что у меня получилось: #include <iostream> #include <iomanip> #include <cmath> using namespace std; const double PI = 3.14159; //математическая постоянная Пи
C++ Рекурсия: вычисление чисел Фибоначчи
Числа Фибоначчи Fn вычисляются по формуле F0=F1=1; Fn=Fn-1+Fn-2, при n=2,3,... Нужно реализовать функцию, которая по заданому номеру n будт вычеслять значение Fn. Использовать рекурсивный алгоритм (рекурсию).
C++ Вывести на печать сообщение о нечетности порядковых номеров букв, следующих за буквами g, l http://www.cyberforum.ru/cpp-beginners/thread947384.html
Друзья, помогите, пожалуйста. Нужно написать лабу, а нам вообще ничего не объяснили. Вот задание. Вывести на печать сообщение о нечетности порядковых номеров букв, следующих за буквами g, l.
C++ где что добавить надо или убрать? помогите подогнать этот код для моего задания using namespace std; int *Create(int n) { if(n<=10000) { int *arr; arr= new int ; for ( int i=0; i<n; i++) подробнее

Показать сообщение отдельно
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
03.09.2013, 02:16     Прекращена работа программы proj.exe
TrickSonix, бегло просмотрел некоторые места кода, у вас во многих местах выход за границу объявленных массивов. Например, setCorabl():
C++
1
2
3
4
if(numberOfShips[4] < 1)
{
       setCorabl(4);
}
Массив объялен так:
C++
1
int numberOfShips[4];
Значит последний допустимый индекс 3, у вас обращение по 4-му индексу.
В конструкторе тоже самое:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Sea::Sea(string name)
{
    for (int i3 = 1; i3 <= 4; i3++)
        numberOfShips[i3] = 0;
    PlayerName = name;
    for (int i = 0; i <= 10; i++)
    {
        for (int j = 0; j <= 10; j++)
            pole[i][j] = 0;
    }
    for (int i1 = 0; i1 <= 10; i1++)
    {
        for (int j1 = 0; j1 <= 10; j1++)
            poleVistrelov[i1][j1] = 0;
    }
    for (int i2 = 0; i2 <= 20; i2++)
    {
        for (int j2 = 0; j2 <= 2; j2++)
            coordinatiCorablei[i2][j2] = 0;
    }
}
Использование, в параметрах for(), оператора <= (вместо <), приводит к выходу за пределы всех объявленных массивов.
Потом, по стандарту (который компилятор DevC++ с успехом обходит), нельзя статически создавать массив не константного размера:
C++
1
2
3
4
5
void Sea::setCorabl(int size)
{
    int num = 1;
    int xy[2*size];
...
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru