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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Игорюня
20 / 16 / 7
Регистрация: 07.12.2013
Сообщений: 244
#1

Странно: выход за пределы статического массива - C++

10.04.2014, 10:24. Просмотров 210. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
    if(mines[m-1][n-1]=='*')++i;
    if(mines[m-1][n]=='*')++i;
    if(mines[m-1][n+1]=='*')++i;
    if(mines[m][n+1]=='*')++i;
    if(mines[m+1][n+1]=='*')++i;
    if(mines[m+1][n]=='*')++i;
    if(mines[m+1][n-1]=='*')++i;
    if(mines[m][n-1]=='*')++i;
Собсно,кусок кода из сапёра.Перед этим мы выбираем ячейку с координатами m и n,а уже в представленном куске кода идёт проверка соседних ячеек на наличие мин.В чём проблема?Если я выберу угловую ячейку,например,с координатами 0,0 ,то будут проверяться некоторые ячейки,которых нет в массиве.Но программа работает исправно.Почему так?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2014, 10:24     Странно: выход за пределы статического массива
Посмотрите здесь:

Выход за пределы массива - C++
#include <assert.h> #include <assert.h> #include <string.h> #include <stdint.h> #include <limits.h> int get_bit(const void...

Выход за пределы динамического массива - C++
#include <iostream> using namespace std; int main() { int** mas = new int*; for(int i=0; i < 20; i++) mas = new...

Выход за пределы массива. Исправить код - C++
Вот такой результат исполнения кода: 5 17 22 10.5 11.23 12.87 6.64 9.82 15.35 - ввел числа в массив с клавиатуры 5 5 17 17 22 22...

Массив. Задачка. Выход за пределы массива - C++
Доброе утро. Подскажите пожалуйста есть кусок кода. Он выводит * если елемент массива <10, если >10 то #. А если подряд 3 элемента больше...

Выход за пределы массива, обработка исключения - C++
Есть такой код, когда я вызываю функцию на вывод массив еще не инициализирован, и я хочу чтобы у меня отлавливалась ошибка, но он заходит в...

Выход за пределы массива при использовании оператора new - C++
#include <iostream> using namespace std; int main() { int *i = new int; i= 1; cout << i; return 0;

Выход за пределы массива при очистке памяти - C++
При попытке очистить память в конце функции вылетает ошибка HEAP CORRUPTION DETECTED. Не могу найти, где именно вылез за пределы массива. ...

Выход за пределы массива при его сортировке - C++
#include "stdafx.h" #include <time.h> #include <clocale> #include <iostream> using namespace std; int _tmain(int argc, _TCHAR*...

Парсинг математических выражений - Итератор: выход за пределы массива - C++
Всем привет, задача написать класс для парсинга мат. выражений (+,-,/,*); По идее выражение задается конструктору, функция eval...

О чем говорит эта ошибка? Выход за пределы массива - C++
main.cpp invalid operands of types `int' and `int' to binary `operator+' вот сам код: #include <cstdlib> #include <iostream> ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IrineK
Заблокирован
10.04.2014, 10:33     Странно: выход за пределы статического массива #2
Вполне возможно. Например:
Миниатюры
Странно: выход за пределы статического массива  
Ответ Создать тему
Опции темы

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