Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2014, 16:22   #1
_BYTE
Пользователь
 
Регистрация: 11.12.2013
Сообщений: 56
По умолчанию проблема с выделением памяти (Си)

Код:
void FloodFill_3(HDC hdc, RECT rect, COLORREF color, COLORREF border) //Растровая развертка многоугольников
{	
	//flags - состояние каждого пиксела в строке: -1 - граница, 0 - вне фигуры, 1 - внутри фигуры
	int *flags = (int*) malloc((rect.right - rect.left) * sizeof(int));
	bool flag = false; //false - вне фигуры, true - внутри фигуры (только для случая: [i] == !border, при [i-1] == border)
	for(int y = rect.top; y <= rect.bottom; y++)
	{
		int i = 0;
		for(int x = rect.left; x <= rect.right; x++)
		{
			if(i == 0)
				if(GetPixel(hdc,x,y) != border)
					flags[i] = 0;
				else
				{
					flags[i] = -1;
					flag = true;
				}
			else
				if(GetPixel(hdc,x,y) != border)
				{
					if(flags[i-1] == -1)
						if(flag)
						{
							flags[i] = 0;
							flag = false;
						}
						else
						{
							flags[i] = 1;
							flag = true;
						}
					if(flags[i-1] == 0)
					{
						flags[i] = 0;
						flag = false;
					}
					if(flags[i-1] == 1)
					{
						flags[i] = 1;
						flag = true;
					}
				}
				else flags[i] = -1;
			if(flags[i] == 1)
				SetPixel(hdc,x,y,color);
			i++;
		}
	}
}
в общем насколько я понял из отладчика у меня не выделяется память массиву flags, он все время как бы имеет 1 элемент, и при этом что интересно оно даже не выдает никаких ошибок не смотря на обращения к предыдущим элементам массива (i-1) о_О помогите никак не врублюсь что не так -_-
_BYTE вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с динамическим выделением памяти gunsoy Общие вопросы C/C++ 0 21.02.2014 19:01
Проблема с динамическим выделением памяти Bugrimov Помощь студентам 12 17.10.2013 04:25
Проблема с выделением памяти в глобальной области windows forms(C++\CLI) DartLenin Помощь студентам 2 24.01.2012 20:58
Массив динамических структур. Проблема с выделением памяти. Алексей Емеля Общие вопросы C/C++ 6 15.07.2011 19:24