Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
#1

Программа зависает - C++

03.06.2012, 13:28. Просмотров 419. Ответов 4
Метки нет (Все метки)

Делаю игру типа Pacman
я управляю им с помощю стрелок и по лабиринту произвольно двигается враг
через некоторое время программа зависает...
я не могу больше управлять пекменом и вообще ничего не двигается...
В чем проблема?
Переполняется буфер или утечка памяти?

Добавлено через 40 минут
может ето из-за таймера???
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2012, 13:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа зависает (C++):

Программа зависает - C++
Переписал пример из книги про указатели. #include <iostream> int main() { int *pA; int a; a=5; pA = &a; ...

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

Почему программа зависает?:( - C++
Почему программа зависает когда надо вводить второе число?:( #include <iostream> using namespace std; int main () { int...

Программа зависает(работа с файлами) - C++
вот код программы: // diskfun.cpp // Чтение из файла и запись нескольких объектов #include <fstream> // для файловых потоков ...

Зависает программа при вычислении - C++
Здравствуйте. Программа написана на Dev c++. При компиляции происходит зависание программы. Никак не могу понять в чем дело. ...

Программа зависает при очищении памяти - C++
Здраствуйте. Написал программу, вроде работает нормально, только при окончании зависает. Вот код: #include <iostream> #include...

4
BoBaH26
30 / 30 / 0
Регистрация: 02.12.2010
Сообщений: 255
03.06.2012, 13:37 #2
Ты код не выложил. Без кода судить о чем-либо трудно.
"Переполняется буфер", возможно. Проследи за всеми переменными, как они себя ведут. Может где-то зацикливание, неправильное условия выхода из цикла...
0
Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
03.06.2012, 13:42  [ТС] #3
возможно..
а код выложить не могу
0
BoBaH26
30 / 30 / 0
Регистрация: 02.12.2010
Сообщений: 255
03.06.2012, 13:48 #4
Как хочешь, тогда тебе помочь никто не сможет, кроме себя самого. В интернете много игр типа пакмена, так что твой код красть никто не собирается.
0
Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
03.06.2012, 21:35  [ТС] #5
вот WM_PAINT
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
 
 case WM_PAINT:   
   {              
   hdc=BeginPaint(hwnd,&PaintStruct);
   GetClientRect(hwnd,&rect);
   hdcMem = CreateCompatibleDC(hdc);
   hbmMem = CreateCompatibleBitmap(hdc, wWidth, wHeight);
   hOld   = (HWND)SelectObject(hdcMem, hbmMem);
   PatBlt( hdcMem, 0, 0, wWidth, wHeight, WHITENESS );
      DrawMap(hdcMem,map);
   hBrush=CreateSolidBrush(RGB(255,255,0));
   SelectObject(hdcMem, hBrush);
   Ellipse(hdcMem,x-radius,y-radius,x+radius,y+radius);
   
   hBrush=CreateSolidBrush(RGB(255,0,0));
   SelectObject(hdcMem, hBrush);
   Ellipse(hdcMem,xv-radius,yv-radius,xv+radius,yv+radius);
      BitBlt(hdc, 0, 0, wWidth, wHeight, hdcMem, 0, 0, SRCCOPY);
       SelectObject(hdcMem, hOld);
   DeleteObject(hbmMem);
   DeleteObject(hBrush);
   DeleteDC  (hdcMem);
   DeleteDC  (hdc);
   EndPaint(hwnd, &PaintStruct);
   
   }
   break;
+
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
 
void DrawMap(HDC hdc,byte map[19][19])
{
 for (int i=0;i<19;i++)
 { 
  for (int j=0;j<19;j++)
  {
   if (map[i][j] == 1)
   {
    rect.left=i*40; 
    rect.top=j*40; 
    rect.right=i*40+40; 
    rect.bottom=j*40+40;
    hBrush=CreateSolidBrush(RGB(10,200,100));
    hBrushOld=(HBRUSH)SelectObject(hdc, hBrush);
    
    Rectangle(hdc,rect.left, rect.top, rect.right, rect.bottom);
       SelectObject(hdc, hBrushOld);
    DeleteObject(hBrush);
    DeleteObject(hBrushOld);
   }
  }
 }
}
а у меня еще используется GetPixel
ето может бить с етим связано???

Добавлено через 9 минут
много GetPixel-ов =)

Добавлено через 1 час 14 минут
чё никто не поможет??
0
03.06.2012, 21:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.06.2012, 21:35
Привет! Вот еще темы с ответами:

Программа зависает при вводе значения b - C++
Помогите пожалуйста. Когда я в прогарамме ввожу значения b, программа &quot;застряла&quot;. #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include...

Программа зависает при загрузке файла - C++
Добрый день. Недавно я написал свою первую программу. Возникла проблема, с которой я не могу разобраться. Программа работает нормально,...

Зависает и не завершается простейшая, пустая программа - C++
Не завершается выполнение простейшей, пустой программы. После запуска, процесс продолжает висеть в памяти и не завершается даже через...

Почему в релиз-версии программа зависает? - C++
Visual C++, Windows 7. В программе в дебуг-версии выполнение цикла do { } while(numBufCyr != 0);не приводит к зависанию, при...


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

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

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