Логотип игрового форума RF-Cheats.ru    
Новости онлайн игр Гарант RF-Cheats.ru Чёрный рынок Реклама и привилегии Разработка читов Арбитраж

Регистрация Бан-лист Сообщество ПОПУЛЯРНОЕ
Вернуться   RF-Cheats.ru - форум читеров и ботоводов > > >

Взлом и программирование

: Аспекты программирования при реализации различных методик взлома.
Читы и обход фроста для RF Online без хайдаБоты и читы для Perfect World бесплатно без хайдаМоды и читы для World of Tanks (WoT) бесплатно без хайдаМоды и читы для Armored Warfare бесплатно без хайдаБоты и читы для DOTA 2 бесплатно без хайдаБоты и читы для Black Desert Online бесплатно без хайдаЧиты на ArcheAge бесплатно без хайдаЧиты для Warface бесплатно без хайдаВзлом ВКонтакте и ОдноклассниковСписок разделов со всеми играмиЧиты для онлайн игр






Ответ
 
Опции темы
Старый 13.11.2013, 14:52   #1
dark
Читодел
Аватар для dark
OFFLINE
Регистрация: 09.04.2007
Сообщений: 965
Благодарностей:
36,566 всего
Мнения: + 37517
Репутация: 116361
Отправить сообщение для dark с помощью ICQ Отправить сообщение для dark с помощью Skype™

Загадка для программеров


Сегодня подруга обратилась за помощью по c++ лабе. Я по понятным причинам согласился

Итак, программа падает с нарушением целостности хипа.
Сорс:
Код:
// laba.cpp: определяет точку входа для консольного приложения.
//

#include "stdafx.h"

#include <iostream>
using namespace std;


class massiv  //объявили класс массив, блин
{	int len;    //в нем создали блин два поля блин: первое типо ддлинна массива
	int *p_mas;  //второе епт указатель на начало массива
public :
	massiv (int n)	// конструктор , блин
	{	
		int *p;   //тут то мы и создаем наш массив
		p= new int(n);
		p_mas= p;
		len=n;
		for( ; p<p_mas+len ; p++) {  //и заполняем его рандомными значениями
			*p = rand()%100;
		}

	}
	void display()		// метод для вывода массива на экран
	{	int *p;
		for(p=p_mas ; p<p_mas+len ; p++)
			cout<<(*p)<<'\n';   //берем и перебериаем все элементы массива и выводим их на епта экран

		cout<<endl;
	}

	  // вот тут то  мы и начниаем нашу работу по переопределению конструкторов
	void operator ++ ()	// перегруженный оператор «инкремент»
	{	int *p;   //этот операторт занимается тем, что ищет сумму в  нашем массве всех чисел. сумму всех чисел.
		int sum=0;
		for(p=p_mas ; p<p_mas+len ; p++)	
			sum+=*p;
		cout<<"sum="<<sum<<endl;   //и выводит ее на экран
	}

	  // а тут мы едрить переопределяем оператор деления, причем так что бы он не делил что-то то на что-то, а выбирал наименьшее или наибольше(смотри по заданию)
	massiv operator % (massiv &b)  
	{int temp_len,*pb,*pthis,*ptemp;
	  if (len>b.len)
	  temp_len=b.len;
	  else
		temp_len=len;
	  bool a=false;
	 massiv temp(temp_len);  //типо создали и записываем все по правилам
	 for(pb=b.p_mas,pthis=p_mas,ptemp=temp.p_mas ; pb<b.p_mas+temp_len ; 		pb++,pthis++,ptemp++)	
		{
			if(a) { *ptemp=*pb>*pthis?*pb:*pthis; }
			else {	*ptemp=*pb<*pthis?*pb:*pthis;	}
	  		a=!a;
	 
		}
	 return temp;
	}



};


int _tmain(int argc, _TCHAR* argv[])
{
int i;
	massiv S(10),D(5),SUM(10);  //создаем три объекта класса
	cout<<"----massiv S ---" <<endl;
	S.display();   //выводим на экран первый
	 
	S++;  //считаем сумму его элементов и вывводим ее на экран
	cout<<"----massiv S ---" <<endl;
	S.display();  //снова выводим первый на экран
	cout<<"----massiv D ---" <<endl;
	D.display();  //выводим второй на экран
	cout<<"---spec---\n"<<endl;
	SUM=S%D;   //создаем третий из первых двух
	SUM.display();  // и тип выводим его на экран
	cin>>i;
	return 0;
}
Честно, пропарился с ней минут 20, повреждение происходит либо при выделении памяти под первый массив, то ли при его заполнении. И то и то проверил, всё по книжкам. Решил выделять память под массив классически через malloc и собственно всё заработало. Неужели проблема в конструкторе?

Cheats Development | Создание читов на заказ

Я не оказываю услуги гаранта!
База данных кидал: blacklist.rf-cheats.ru
Обязательно проверяйте человека через чёрный список прежде чем совершать с ним сделку.
 
Ответить с цитированием


Старый 13.11.2013, 14:55   #2
Тигрь
Крестный отец всех читеров
Аватар для Тигрь
OFFLINE
Регистрация: 02.04.2008
Сообщений: 4,028
Благодарностей:
37,789 всего
Мнения: + 32057
Репутация: 106739

В который раз убеждаюсь что дарк нуб в программировании.


Если бы я был умен - я бы сошел с ума.



 
Ответить с цитированием
Сказали спасибо:
Dire (13.11.2013), Sitanom (13.11.2013)
Старый 13.11.2013, 14:57   #3
Sitanom
Читер
Аватар для Sitanom
OFFLINE
Регистрация: 08.02.2012
Сообщений: 160
Благодарностей:
2,831 всего
Мнения: + 13477
Репутация: 7284

Тигр,помог бы лучше
Хотя ты,дарк два нуба
 
Ответить с цитированием
Старый 13.11.2013, 15:04   #4
dark
Читодел
Аватар для dark
OFFLINE
Регистрация: 09.04.2007
Сообщений: 965
Благодарностей:
36,566 всего
Мнения: + 37517
Репутация: 116361
Отправить сообщение для dark с помощью ICQ Отправить сообщение для dark с помощью Skype™

действительно, не заметил, что скобка не та

Cheats Development | Создание читов на заказ

Я не оказываю услуги гаранта!
База данных кидал: blacklist.rf-cheats.ru
Обязательно проверяйте человека через чёрный список прежде чем совершать с ним сделку.
 
Ответить с цитированием
Ответ



Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Мир танков | Проект "Армата" | ArcheAge | Black Desert | РФ Онлайн | Айон | Майнкрафт | Браузерные игры
Элдер скролс | Р2 Онлайн | Реквием Онлайн | ПУБГ | Роял Квест | ГТА Санадреас | Контра | Дота 2
Мир кораблей | Лост Арк | Arma2 DayZ mod | The War Z | Карос: Начало | Tera Online
Читы для всех Онлайн-игр