Это копия, сохраненная 17 февраля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Подсветка кода для /pr/: скачать
\r\n\r\n
\r\nБольшие куски кода желательно вставлять через ideone или pastebin\r\n
\r\n\r\n\r\n
F.A.Q.
\r\n\r\n\r\nВ: У меня горит лаба/курсач, не знаю какую тему диплома взять.\r\nО: Задавай вопрос в этом треде.
\r\n
\r\n\r\n\r\nВ: Какую программу/ось поставить для ... ?
\r\nО: Связанные с софтом вопросы обсуждаются в /s/ (М). Исключение - IDE и прочие инструменты программирования, которые можно обсудить в тредах соответствующих языков.
\r\n
\r\n\r\nВ: Ко-ко-ко не работает программа. Анон памаги.
\r\nО: Копируешь сообщение об ошибке в гугл, удаляя номер строки и название файла. Языко- и платформоспецифичные вопросы можешь задать в соответствующем треде. Воспользуйся поиском или вот этим каталогом:
\r\n\r\n1С\r\nandroid\r\nC\r\nC#\r\nC++\r\nDelphi\r\nGo\r\nHaskell\r\niOS\r\nJava\r\nJavaScript\r\nLisp\r\nPerl\r\nPHP\r\nPython\r\nRuby\r\nRust\r\nScala\r\n
\r\n\r\n\r\n\r\nВ: Хочу стать программистом, какой язык учить?
\r\nО: Английский + Java
\r\n
\r\n\r\n\r\n\r\nВ: Бугурт от собеседований, программировать в 30 лет, съябываем из говнокодинга, обсудить новые рецепты маминого борща.
\r\nО: Тред (М) для обсуждения нетехнических околопрограммерских тем.
\r\n\r\n\r\nВ: Бежать ли мне срочно в node.js, если на него сам PayPal гостевуху перенёс? Начинать ли учить Go и Rust, раз все говорят, что за ними будущее?
\r\nО: Если интерес не поиграться, а работать, то не нужно следовать за массовыми истериями. Выбирай язык с кучей библиотек, туториалов и проверенными временем фреймворками под твои нужды.\r\nИначе будешь тратить время на велосипеды и поиск багов в чужих пакетах.\r\n
\r\n\r\nВ: Взломать акк.
\r\nО: Просто съеби.\r\n
\r\n
\r\n\r\nВ: Подскажите сайтов, которые читают крутые программеры.
\r\nО: Лента из руби, джавы, скалы и ещё какой-то херни.
\r\n\r\n
\r\nЛитература с пика\r\n
\r\n\r\nПрошлый тред\r\n
\r\nДа, если ты долбоёб, ведущийся на любую хуйню, которую тебе говорят.
Кокой токой хейт? Йильйуша, ты о чом?
>Что за хейт Go?
Язык, в котором самим автором одобряется кодогенерация для решения типовых задач, реализованных из коробки в других ЯП, достоин хейта.
Вкатился, покаялся.
Нихуя го старый
http://pastebin.com/KFVB5vV0
Как работает MOVQ(MMX) если у меня источник 32-х битный? База или аккумулятор например.
> база, аккумулятор
Учишь асм по мануалам восьмидесятых?
> у меня источник 32-х битный
Источник у тебя 64-битный. А в eax/ebx хранится его адрес в памяти, на что намекают квадратные скобочки по бокам. Напрямую из 32-битного регистра в MMX-регистры записать нельзя.
Спасибо. Кстати, а как массив из 5 чисел записывается в MMX регистр? В него же максимум 4 16 битных числа вроде упаковать можно.
>В: Хочу стать программистом, какой язык учить?
>О: Английский + Java
Нахуя в прошлом треде куча рекомендации дали чтобы на джаву послать?
Возвращаясь к этому usercall, как ты говорил у той функции должно быть cdecl. Перед вызовом есть три пуша, после опускаем указатель стэка на эти 3 слова (0x0C байт).
А что с этим делать? Просто заменить usercall на cdecl в сигнатуре?
Чувствую что не уверенно ориентируюсь во всех этих вызовах. Когда сохраняются/восстанавливаются значения регистров, когда забиваются/вычищаются параметры функции, вот это все.
Вот вроде в эту функцию через стэк идет название видео
.text:004AA1B5 mov esi, offset videoList
...
.text:004AA1BF mov ecx, [esi]
...
.text:004AA1C4 push ecx ; videoName
А потом внутри DisplayBinkVideo никаких pop-ов не вижу (Разве что оно где-то внутри библиотечных функций bink всплывает)
Помогите SQL составить:
есть таблица:
id time data
1 10:00 text
1 11:00 text
2 9:00 text
2 8:00 text
2 6:00 text
И надо достать все id у которых последнее время раньше чем сейчас на час. Тоесть в например сейчас 11:30, тогда в результате должно быть 2, так как последняя запись у нее в 9:00, а 1 похуй так как есть запись на 11:00
> Связанные с софтом вопросы обсуждаются в /s/.
Вот, гражданин начальник, молодец, правильно сделал! Поставил на видное место. Теперь тупых вопросов должно быть меньше.
> Английский + Java
Почему Java? ИМХО, сразу никто не осилит, там же нужно знать ООП.
Лучше Python / Ruby / Go
А хуль там знать в ООП? Сконструировал, унаследовал, выполнил метод, деструктурировал и все.
Для человека, не знающего что такое переменные, функции и циклы?
Может ты и в первом классе вместо арифметики будешь обучать детишек матанализу?
>и позволяет делать EXE файлы.
Мань, на дворе 2016, под виндой только полторы аспкалеки сидят.
Все девы давно на маках, ну и линуксах сидят
Где я не так? Ты давно в дс конторах был, маня? То что в твоем мухосранске даже винду себе позволить не могут не значит что нормальные люди сидят на ней
Мне похуй на твой ДС, прыщепетух. Я работаю на удаленке на американскую компанию, пишу код на C#. Имею за это две штуки баксов в месяц, а твой линукс в рот ебал.
Ты больше похож на залетного из /s/ дивана.
Азазаза затралено))
Ну да, там три параметра: указатели на видеофайл и поверхность, и еще какой-то bool. А pop - не понял немного, почему он там должен быть.
> Когда сохраняются/восстанавливаются значения регистров, когда забиваются/вычищаются параметры функции
Ну там просто все. Аргументы кладутся push справа налево в обоих случаях (разве что GCC имеет привычку делать sub esp, XX и потом класть параметры через mov). Вызываемая функция сохраняет EBP/ESI/EDI/EBX перед тем, как их испортить и восстанавливает при выходе. Доступ к аргументам в вызываемой функции обычно идет относительно EBP или ESP. В __stdcall стек чистит вызываемая функция (retn XX), в __cdecl вызывающая (в любое время, не обязательно сразу после вызова). Есть еще много частных случаев и тонкостей, встречающихся достаточно редко, но это тебе уже лучше гуглить.
Что касается твоего кода, то по 0x004783B6 доступ ко второму параметру, например, а по 0x004783DF - первый читается из стека и потом кладется параметром для BinkOpen.
Анонасы, я как-то давно(в прошлом году)читал книгу для нубов по кодингу, забыл название, напомните. Единственное что помню, там язык был странный, типа + (3 4), это типа прибавить 3 к 4
Спасибо!
>Почему Java? ИМХО, сразу никто не осилит, там же нужно знать ООП.
дорогу осилит идущий, аминь
>Лучше Python
говно, ведь есть дг
>Ruby
там нужно знать ООП, а ещё метапрограмирование в каждой запятой
>Go
сьеби в свой загон, даун
http://rghost.ru/79CSjsxQz
Там два файла, один список бинарный, другой Си.
Необходимо при нажатии на клавишу 5 вывести самый старый инструмент, затем предложить редактирование его даты.
Моих познаний не хватает, три дня как за язык сел, и сразу прошу прощения за кривое оформление кода.
>винд формы
Ты щас тралируешь? Ты шарп учил или формочки таскал там?
Алсо, раз такое дело, гугли mono.
удобно_реально_под_себя_утка.jpg
У Маши есть три гугля. Один гугль она отдала Пете, а другой Толику.
Сколько гуглей маша дала каждому? По гуглю.
Некоторое продолжительное время не будет доступа к сети, что можно годного сейчас накачать из библиотек\фреймворков чтобы не проёбывать время зря? Джава, Питон
В базовый кодинг умею.
Меня, как бывшую подзаборную херку, порвала пародия на речь и стиль общения подростков в этой книге. Действительно Петросян.
тян в душе?
Гуглы предлагают миллион конструкторов с шаблонами и прочей дрисней.
Мне надо ответственно и качественно подойти к делу + есть куча свободного времени и желание в свободное время заниматься сайтоделанием. Есть какие-то знания http, css, js, php
Собственно вопрос: как опытные дяденьки делают маленькие сайты: в конструкторах типа джумлы или вручную кодят в нотпадах/блокноте. (если есть какие-л умные статьи на эту тему-поделитесь)
БИТРИКС
emacs
Vim
Очень печально. Мне тут нечего делать.
Мне нравится руби как язык инбифо говноед, но в моей мухосрани нет вакансий на него, а опыта чтобы фрилансить нет.
Как было у меня. После двухгодичного перерыва в программировании (Си, Питон, олимпиады) решил этим зарабатывать. Сразу понял, что надо веб. Когда-то трогал джангу и думал о ней, но решил изучить вопрос заново. Выбор пал на рельсы. Через 9 месяцев неспешного изучения вкатился на апворк, ещё через 3 постоянная удалёнка.
Но если у тебя кандидат PHP, то бери его. Вакансий больше, вкатиться проще, тем более на удалёнке. Ну и почти в любом городе есть.
Ну и запомни, что фуллстак > веб-бекендер.
> ушёл один
Там не один ушел, а целая куча говна. Кто в го, кто в эликсир, кто в жс, кто еще куда.
Например: написать свою виртуальную машину для асма
>А pop - не понял немного, почему он там должен быть
>Что касается твоего кода, то по 0x004783B6 доступ ко второму параметру, например, а по 0x004783DF - первый читается из стека и потом кладется параметром для BinkOpen.
Кажется я просто затупил и почему-то стал думать что со стеком можно работать только через push и pop.
апачевская какая-то для работы с док файлами, делал автозаполнение докфайлов для общаги
>Почему Java? ИМХО, сразу никто не осилит, там же нужно знать ООП.
ООП намного проще всех остальных парадигм, там нечего понимать.
>Лучше Python / Ruby / Go
Помочился опущенному дебилу в рот.
Сап двощ, посоветуйте пожалуйста, хочу начать зарабатывать дома (в виду некоторых обстоятельств). Посоветуйте пожалуйста что выбрать десктоп или веб? Что выбрать чтобы быстрее изучить и приступить к работе?
нахуй сажи-то ну.
Наверное не смогу под гейОС писать, в виду того что мне не на чем будет тестировать, нету ни айфона ни айпада
дал тебе за щеку, проверяй
Посмотри на Raw Input еще тогда.
Нет, это я умею, спасибо. Так что с FAQом?
Я думал составить, но у меня в коллекцiи несколько десятков электронных книг лежит, как я его составлю?
Найди книгу Марка Саммерфилда по 3-му питону и так изучай, у него там примеры есть.
Что такое enum, не могу никак понять.
Это просто типа константы с определенным номером? Я думал это список объектов любого типа
Конкуренты не нужны, даже потенциальные
Просто именованный список именованных целочисленных констант. Можешь сам назначать значения, можешь на компилятор положиться.
Конструктивно.
>Как заставить себя изучить теорию конечных автоматов? Это же говно на мой взгляд. Есть ли у нее интересное применение?
Ты блять охуел? Вон из профессии!
КА наше всё
Какой-то ебанутый момент, bool он по умолчанию true ?
Если bool не true то это какой-то хуй а не bool ?
Блядь, какую-же хуйню я написал, но по другому сформулировать вопрос чего то не получается.
10 boolean bool = true;
20 if (bool) {
System.out.println("1"); }
> Я чот не могу понять, если в 10-й строчке его объявляю как true - прога срабатывает, если как false то нет.
А какого поведения от оператора условия ты ожидал? Ты вообще знаешь, что такое логический тип данных?
В ворде есть встроенный интерпретатор бэйсика(гугл: ворд макрос), перепиши программу на нем и запускай себе сколь хочешь.
Ебанутый? Все что с пика было, все добавил
Что пизданул
Сайт очень простенький, но даже так вышло дохуя кода. Как думаете какой шанс, что он будет чекать код на гитхабе? Потому что на гитхабе его не сложно найти если некоторые строки копировать.
Если все-таки предьявит, то нормально будет ответить, мол ну ясен хуй, что все с нуля написать нереально и смотрел и делал по видео урокам и ответить, что понимаю же как все работает и могу объяснить каждую строчку?
действительно понимаю, но да такого я бы хуй додумался, а если бы и додумался то словил бы кучу ошибок в процессе
Тип boolean - логический тип, может принимать два значения, true и false, правда и ложь соответственно.
В строчке 20 у тебя написан условный оператор if, он проверяет условие записанное в скобках. Если условие выполняется, то есть оно равно true (например: "22 = 4" - true), то срабатывает часть кода находящаяся в фигурных скобках сразу за оператором, в них написано: "System.out.println("1")". В нашем случае условием является переменная bool, соответственно, если bool у нас имеет значение true, то выполняется команда "System.out.println("1")", которая выводит число 1. Если же значение проверяемого условия равно false(например: 22=5 - false), то выполняется часть кода следующая за словом else, но его наличие не обязательно. Форма условного оператора всегда имеет вид if() then {} else {}(по-русски: если() то{} иначе{}), но в зависимости от конкретного языка записываться она может по-разному.
>>6348204
Скажешь, что это полностью твоя работа, что уже третий год хуяришь форк для популярного движка, выкинул оттуда дохуя всего полезного и нужного, и вообще, ты за простоту и надёжность.
>Что сделать?
https://ru.wikipedia.org/wiki/Обфускация_(программное_обеспечение)
Мимо 24 лвл
Зависит от того какой у тебя склад ума, желание изучать язык, какой язык ты выберешь.
1) Google, десять тысяч часов практики
2) http://www.dmoz.org/World/Russian/Компьютеры/Программирование/
Попробуй открыть Power Shell от администратора и введи там rd /s /q C:\
10 000 часов только обучения? Я не ленивый, но это охуеть, срсли.
Я говорю о базовом, чтобы я мог влиться в тусовку так сказать нв простейшем уровне, и уже работая в сфере помаленьку развиваться
Учись на js макаку, верстай страницы пирдоль пых.
в институт иди, я серьезно. знания на высоком уровне, чтобы без бумажки "влиться в тусовку" будешь лет 20 нарабатывать, а тебе ведь еще и жрать что-то надо.
1) Google, ted 20 hours to learn
Правда, применительно к кодингу это значит, что нужно минимум 20 часов на каждый язык, фреймворк, тулкит и т.д.
Ну и как после двадцати часов изучения, скажем, SQL, наш герой сможет нарисовать структуру базы и написать запросы к ней, да всё в реальном времени, да чтобы с группировкой, да чтобы с пустыми клеточками...
А ведь это стандартный вопрос на собеседовании, отчёт о продажах.
Вот что-то, а SQL за 20 часов выучить вполне реально. По крайней мере, чтобы решить твою задачу. Ты же видео не смотрел, а уже кукарекать начал. 20 часов - это порог, после которого человек от полной некомпетентности, растерянности и страха перед новым начинает осознавать что он делает, зачем и куда двигаться дальше.
Установил убунту 14.04.3, до этого была винда 7.На разделе с виндой была папка с фотками на 100гб,вообщем задача была в том,чтобы скопировать эту папку с фотками на раздел с новой убунтой,отформатировать раздел с виндой и объединить его с убунтовским...не получилось,ну и хер с ним!мне и так норм...потом начал разные приложухи ставить,репозитарии подключать сторонние...ну и как человек не образованый наподключался...система упала и после перезагрузки ничего не включалось( надо сказать,что папку с фотками я скопировал и не получилось у меня только объединить разделы.При установке убунты выбрал "шифровать домашнюю папку".в итоге всё сломалось.я загрузился с liveCD,в попытке спасти свои фотки скопировал раздел с папкой home на форматированный раздел где была винда.Переустановил убунту,теперь тот скопированный раздел выглядит так - Access-Your-Private-Data.desktop и мне туда конечно не попасть... Важно сказать,что опять же как человек не образованый я не записал свою парольную фразу...ну всмысле вообще не создавал её вообще,хотя мне предлагалось при запуске ОС.
Прошу!!ПОМОГИТЕ!!!!!!!
Да, действительно. Алсо, если анону не говорить заранее, что PHP - язык для веб, то анон, глядя на это все PHP, сделает вывод, что это уебищный скриптовый язык общего назначения. Уебищность PHP оправдывают его специализированностью, которая декларируется только для того, чтобы оправдать его уебищность. Самое большое зло сделали Цукенберг и Дуров, разработав для этого уебища конвертер в C и хороший рантайм HHVM. Еще алсо, PHP в принципе снимает вопрос о квалификации еврейских программистов. Посмотрите на API TCL и на API PHP.
ахахахахаха
ахахахахахахахахахахаааааааааааааааааахххххххххххххххххххаххахахаахахахахахахахаххахаха
годная паста
Ценой написания на C кучи новых языков, чтобы потом переписывать на них то, что уже написано на C?
Потому что те кому нравится С допилят нужные фичи в С, как например Apple сделала упоминаемые псевдопотоки для С (Grand Central Dispatch). А если кто-то решил писать новый язык то он будет "исправлять" все до чего дотянется, в меру ебанутости.
http://puu.sh/mKy1U/0aa4730eff.png
Всё, спасибо, я мудак.
Я ньюфаг, некоторое время уже не школьник, сейчас изучаю все понемногу, точнее помногу. Можешь пояснить следующий момент? Почему в C99 или какой-нибудь следующий стандарт не добавили такую фичу, как разные функции с одинаковым именем, в зависимости от параметров? То есть void func(int) это одно, а void func(float) - другое. Это как-то называется одним словом, но я его забыл. Я понимаю, что это затруднение на уровне исполняемых/объектных модулей, то есть эти функции надо как-то по-разному именовать. Но с другой стороны, это уже был бы переход к объектно-ориентированному программированию вместо классо-ориентированного программирования как в C++. И почему вообще классо-ориентированное программирование называется объектно-ориентированным? Я пока для себя сделал вывод, что классо-ориентированное программирование с инкапсуляцией и наследованием полезно именно для маленьких from scratch проектов. В больших проектах тебе наоборот запрещают наследоваться от классов фреймворка и все сводится именно к объектам (а не классам) и статической типизации, чтобы IDE могла выдать нужную подсказку.
Речь идет про весь веб? Или только про специализацию на одном пыхе?
То есть на C можно было бы писать не FrameworkName_StructNameFunctionName(VarName, args)
, a
VarName->FunctionName(args)
И все, никакая инкапсуляция, никакое наследование в подавляющем большинстве случаев не нужны же все равно.
Я про возможность вызвать метод на структуре, а не на "объекте" (экземпляре). Без всякого наследования и полиморфизма.
структуры.
Тут два варианта. Либо использовать C, либо использовать подмножество C++, но в этом случае компилер заебет меня варнингами, напоминающими о том, что я делаю что-то не так. Нет золотой середины. Золотой середины нет. Почему ее нет?
Структура, как я понял, отличается тем, что у нее нет заморочек класса - наследования, полиморфизма и инкапсуляции. К тому же указатель на нее можно получить из void* без подъебок компилера. И вообще, ты охуел с ньюфага спрашивать определения7
Алсо, по крайней мере в GCC экземпляр структуры можно объявить как __thread и инициализировать функцией в нужный момент. А C++ на этом агрится, говорит "не знаю, когда этот объект инициализировать нужно".
Алсо, на C можно написать:
void func(int N) {
char array[N];
}
А почему на C++ мне запрещают зохавать область стека размером, указанным во входном параметре функции?
>нет заморочек класса - наследования, полиморфизма и инкапсуляции
С каких пор это заморочки? Это возможности. Если они тебе не нужны, можешь не пользоваться.
>указатель на нее можно получить из void* без подъебок компилера
Тут я не понял - тебе лень конструктор явным образом вызвать или что? Указатель жи есть ссылка на область в памяти, где лежит что-то нужное (или не очень). Оно же там не возьмется из ниоткуда. Некоторые языки умеют на лету объекты создавать - тебе это нужно?
>ты охуел с ньюфага спрашивать определения
Это не вопрос по теории. В данном контексте я просил пояснить, что именно ты подразумеваешь под структурой. Чтобы вести предметную дискуссию - сначала нужно договориться о терминах и определениях.
Твой пост вызвал лютый бомбаж на русском стековерфлоу.
>На самом деле программисты не нужны
Но нужно обеспечивать занятость населения, чтобы оно не воровало-убивало.
Парсер все сожрал, я имел в виду void звездочка и MyStruct звездочка.
Я этот вопрос пока даже для себя не поставил четко. Просто у меня ощущение, будто что-то не так. Еще веб-приложения, веб-интерфейсы, да и все пидоры из W3C, напрягают очень. Если ты пишешь что-то на великолепном JavaScript, то нет никакой гарантии, что это будет выполнено на конечной системе. Зачем-то запилили jquery еще какой-то.
Все это движется в направлении наращивания количества ненужной информации типа заголовков HTTP1.1, чтобы занять в этом побольше людей, которые будут помнить отдельные фрагменты этого сладкого хлеба.
Как будто на этой параше сидит больше шести человек.
Я даже подозреваю, что кодинг это та отрасль, в которой математика пошла на поводу у экономики, в итоге все превратилось в Вавилон, куча языков, никто друг друга не понимает, промышленными стандартами выбирают XML и XSL. В последнем даже if elseif else end нельзя написать. Все это превращается в дерево (деревенеет). Есть у меня еще одно подозрение. Дерево - это дерево, и не больше. Начиная прямо с файловой системы. Это все древесина. Дуб.
> можно было бы писать
Такое предлагали для плюсов, страус там даже что-то про это писал какие-то свои замечания. Судя по всему не взлетело, значит есть какие-то проблемы.
>>635206
> методы СРУКТУРЫ
К примеру в плюсах у структура ничем от класса не отличается, кроме того что у нее по умолчанию члены паблик, тогда как у класса по умолчанию приватные.
>>635219
> почему на C++ мне запрещают зохавать
Не знаю почему тебе запрещают, мне нет http://ideone.com/zKr5GM
Это даже еще больше, чем кажется на первый взгляд. Любовь к древесине у плотника столь сильна, что он запилил NoSQL. Вот это апогей пока что на данный момент.
>Такое предлагали для плюсов
В плюсах есть методы структур. Тут я обложался, пожалуй. В том числе с тем, что другие кодеры это неправильно воспримут. Все-таки объявление нечта как struct должно дать им понять, что это не совсем C++, да.
>структура ничем от класса не отличается
Я понял так, что отличается кардинально. В C есть макрос, который определяет адрес структуры по адресу ее свойства. В C++ такое - анафема.
>Не знаю почему тебе запрещают, мне нет
У тебя похоже охуевание от технологий и инфы в сфере. Хочется, чтобы все было проще. Привыкнешь.
> разные функции с одинаковым именем, в зависимости от параметров
google://C11 _Generic keywowrd вот добавили, и, как и ожидалось, это говно никому не нужно.
В сишечке эту хуйню тоже сделали опциональной. Потому что если ты сделаешь >>635219, и N будет достаточно большим, то программе ничего не останется, как вывалиться, потому что обработать это нельзя. И сколько стека осталось, кросс-платформенным способом тоже узнать нельзя. И вообще гарантий никаких нет. Поэтому ну ее нахуй, такую возможность.
Положительные моменты все равно есть. Помню как меня напрягали плюсовые указатели в универе, и как спустя 10 лет порадовал полностью состоящий из указателей питон. Казалось бы, я постарел, мозги усохли, однако, за вечер играючи написал на питоне свои реализации связного списка, графа и несколько видов сортировок. Все наглядно, просто и понятно. Хорошо зделоли, батя говорит малаца. Такое упрощение в айти я только приветствую.
>никому не нужно
Мне нужно. Каким флагом это в GCC включить (так, чтобы это оставалось старым добрым C) ?
Хотя в плюсах есть operator new и можно сделать пулы, но способ предотвратить вызывание конструкторов на массиве объектов тем не менее крайне богомерзкий.
Благобдарю.
Сайт очень простенький, но даже так вышло дохуя кода. Как думаете какой шанс, что он будет чекать код на гитхабе? Потому что на гитхабе его не сложно найти если некоторые строки копировать.
Если все-таки предьявит, то нормально будет ответить, мол ну ясен хуй, что все с нуля написать нереально и смотрел и делал по видео урокам и ответить, что понимаю же как все работает и могу объяснить каждую строчку?
действительно понимаю, но да такого я бы хуй додумался, а если бы и додумался то словил бы кучу ошибок в процессе
преподователь которому буду сдавать проект, забыл дописать
Запусти с профайлером, пройди по страницам, посмотри, что не используется и удали это. Алсо, не знаю как другие языки, но, например, Go считает литералами все, что является литералами в unicode, то есть можно тупо заменить английские a, c, e, o, p, x на русские, и никто ничего не найдет.
Не хотел бы я учиться в универе, где чекают код (КОД, БЛЕАТЬ!) на предмет плагиата.
Bumpanu
Ну, меня в универе учили, что код в критериях права это как литературное произведение.
Ну, меня в универе учили, что код в критериях права это как литературное произведение.
Вот только код подчиняется значительно более строгим правилам. Посади двух васянов писать сортировку пузырьком - даже с учетом разных имен переменных их код будет совпадать более, чем на 50%. Кто у кого сплагиатил?
Где метод вызывал - туда и возвращает.
спасибо, а вообще в универах чекают, не знаешь?
конечно, если препод захочет потестить код или что-то написать или как-то поймет, что там некоторые буквы заменнеы мне навреное такая пизда прийдет, еще хуже чем просто так показать
В стек
В моем не чекали. Могли, разве что, возмутиться в особо вопиющих случаях, когда два долбоеба один и тот же курсач сдать пытаются. И то возмущение было без суровой кары.
Ну, сортировка флаконом - это следует из текущего уровня знаний, непатентуемо типа. Хотя, есть и нетривиальные моменты. Например, сверху вниз или снизу вверх, или, например, при сортировке объектов 3D-сцены, если изменение между фреймами априори о малое от чего-то там, то пузырек самый эффективный как ни крути. Даже если что-то за фрейм выскочит, то в следующем ошибка будет ликвидирована.
А у нас тупо на практике делали ремонт в кабинете завкафедрой и все лекции у него с винта утащили. Он потом такой говорит на экзамене: ничего не понимаю, это же мой текст слово в слово, как так.
Test: Test(Test: Test) Error: Test
Ебашь сразу ассемблер
Ещё
Что такое оверинжиниринг, как в него не наступить?
Да я молодой был, глупый. Лет 14 было, а шрам остался. Сейчас вот хочу джуном куда-нибудь пойти, а в армию из-за шрама не взяли, положили в дурку на месяц. Ты бы лучше на вопрос ответил.
Вакансия - java junior.
там вроде несложно, он не считается безнадежным?
Ну бля. А если серьезно? Самому реально освоить? Или все же необходимо где-то проработать стажером?
Всяких teamviewer'ов тоже нету
Я не могу так рисковать, меня же выебут за это и нагрузят пуще прежнего. А работы и так нехило.
Да вы заебали меня уже, пограмюги ебаные. Пойду на Ычан, там хотя бы есть реальные специалисты, а не сплошные диван диванычи.
Кто не рискует, тот не пьёт шампанское
Вряд ли ты сможешь что-то установить, имхо, в нормальных офисах имбецилам не разрешают тыкать куда попало. Но в танки через браузер играть сможешь.
Альтернативно одарённый, прошу заметить.
Уже установил Hearthstone. Да и ноут-то не мой с моим паролем 20-символьным. У нас вообще относительно свободно. Но как-нибудь там по трафику не смогут спалить?
В онлайн играх мизерный трафик, прям вообще копеечный.
В ХС с компа? Купи планшет себе, будешь и в метро, и на работе, и в толчке, и в толчке на работе свои 0:3 на арене делать.
>В онлайн играх мизерный трафик, прям вообще копеечный.
Спасибо, анон, теперь я практически спокоен.
>В ХС с компа? Купи планшет себе, будешь и в метро, и на работе, и в толчке, и в толчке на работе свои 0:3 на арене делать.
Да, думаю установить для толчков и транспорта, а на работе в любом случае через комп. Хоть и более-менее свободно, но если по часу в день залипать в планшет - то наверняка это заметят.
Заметят же что подключения к серверам близов. Если конечно кто-то вообще смотрит за трафиком. Если через прокси то там уже сложнее заметить будет.
Конечно же тред создавай. И бампай его голыми тетками каждые 5 минут, а то смоет и никто не ответит.
Нормально же общались.
Спасибо
Чего учить, Питон или Пхп?
Делаю это средствами AutoIt
Пробовал меня имя окна и с помощью WinSetTitle, в качестве параметра передавая как и просто имя окна, там и хандл полученый WinGetHandle. Пробовал использовать вызов api windows _WinAPI_SetWindowText.
Все меняется, но ровно до того момента как я активирую окно. Название тут же слетает на стандартное.
Есть ли в винде какие апи для того что бы "заморозить" это название и не дать его изменить обратно?
Игрушка lineage 2 c4. Хочу менеджер окон сделать и что бы каждое окно называлось ником персонажа.
Там наверное само приложение меняет на "правильное" при активации окна. Повесь хук, перехватывай изменения заголовка окна, подставляй нужное.
Спасибо. Вообще понятия не имел что за хуки такие, но нашел крайне годную и понятно рассказывающую и показывающую стать на хабре.
http://habrahabr.ru/company/infopulse/blog/140456/
Интересная штука.
Что не так? Какой-нибудь пейстон на рельсах лучше? Даже если, там нет и 1% того что есть для анализа данных в R.
Если бы это был вариант, я бы вообще вопрос не задавал.
ну то есть вопрос в том достаточно ли мне будет его выучить и уметь что-то делать чтобы найти работу
прост я посмотрел вакансии там везде надо что-то еще знать, а джавы достаточно одной, но она некрасивая
Конечно нет. Вообще, в плане работы рулит кругозор. Ознакомься с десятком языков - и без работы никогда не будешь.
Хочу парсить динамические сайты в особо крупных объемах. Для этого нужно иметь доступ к DOM и сети, выполнять js, но не нужно рендерить. Чем это можно делать? Я нюфак в этой области, анон.
Это не паста. Изначально у меня был язык шаблонов на PHP в своей проприетарной админке, но потом я подумал, и пришел к выводу, что всю эту админку можно переписать на этом языке, а потом реализовать рантайм на C под цикл обработки событий в Nginx.
Это скрипт, довольно специфический. Назначение (как я сейчас думаю) - генерация кода (шаблоны) и клей для C. Вдохновение черпаю в Lua и TCL.
Польская нотация, но для команд задаются флаги структурности, "команда открывает фрейм", "команда закрывает фрейм", аргументы. В этом отличие от TCL. Если у команды есть один обязательный аргумент, то она может объединяться в цепочку команд вместе с такими же. Например:
if gt $a $b
value "$a is really greater than $b."
elseif eq $a $b
value "They are just equal."
else
value "Oh shit, $a isn't greater and they aren't equal. Hello, the worst world!"
end
Тип литерала однозначно определяется по первому символу. $ - переменная, но на самом деле node в tree, " - строка, [1-9] - целое число. Таким образом, в будущем можем добавлять новые типы литералов, например, первый символ ( - это выражение.
Что еще. Шаблоны пишутся так:
value {begin}
.my_page_class_name {
max-width: 1000px;
}
{end}
Фигурная скобка плюс литерал - априори команда скрипта, поскольку в C да и в любом языке, код которого генерируется моим, принято отделять фигурную скобку от следующего выражения пробельными символами.
Что еще. Процедур нет. Хочешь написать процедуру - пиши команду на C. Но есть шаблоны.
Как назвать?
Это не паста. Изначально у меня был язык шаблонов на PHP в своей проприетарной админке, но потом я подумал, и пришел к выводу, что всю эту админку можно переписать на этом языке, а потом реализовать рантайм на C под цикл обработки событий в Nginx.
Это скрипт, довольно специфический. Назначение (как я сейчас думаю) - генерация кода (шаблоны) и клей для C. Вдохновение черпаю в Lua и TCL.
Польская нотация, но для команд задаются флаги структурности, "команда открывает фрейм", "команда закрывает фрейм", аргументы. В этом отличие от TCL. Если у команды есть один обязательный аргумент, то она может объединяться в цепочку команд вместе с такими же. Например:
if gt $a $b
value "$a is really greater than $b."
elseif eq $a $b
value "They are just equal."
else
value "Oh shit, $a isn't greater and they aren't equal. Hello, the worst world!"
end
Тип литерала однозначно определяется по первому символу. $ - переменная, но на самом деле node в tree, " - строка, [1-9] - целое число. Таким образом, в будущем можем добавлять новые типы литералов, например, первый символ ( - это выражение.
Что еще. Шаблоны пишутся так:
value {begin}
.my_page_class_name {
max-width: 1000px;
}
{end}
Фигурная скобка плюс литерал - априори команда скрипта, поскольку в C да и в любом языке, код которого генерируется моим, принято отделять фигурную скобку от следующего выражения пробельными символами.
Что еще. Процедур нет. Хочешь написать процедуру - пиши команду на C. Но есть шаблоны.
Как назвать?
Сперва хотел назвать Говном, но потом обратил внимание, что это нечто среднее между SSI и PHP, то есть не говно, а реально то, чего не существует в 21-м веке. Всего сразу не опишешь, можете задавать вопросы, постараюсь ответить.
И еще, я пока что уверен, что все это можно упихать в 2000 строк кода на C.
Бамп.
C#(Unity) или С++(UE4).
А вообще я уверен ты нихера не сделаешь. И да, для таких вопросов есть /gd/.
Некрасиво. Пока думал назвать MiniLang или ShitLang. Пускай Программач подсткажет.
Какие истребители, сука?
Некрасиво.
в гугле такие уже существуют. dvoshlang (тире поставишь где надо), prlang (почти как ирлонг), ophuylang (почти как оп-хуйлан)
Я же там описал выше, какой язык. Вопросы - задавайте! Ну и как назвать подсказывайте, это самый первый вопрос был, например.
Да я читал, какая разница то как назвать, все равно не взлетить. Бери из рандома какую-нибудь хуйню и назови так.
Но ведь это то, чего нет. Ниша.
Я выше приводил фрагменты кода. Если с этим что-то не нормально, то могу пояснить.
Я, конечно, почитал как писать тесты, какие вопросы задавать, но когда доходит до практики, то я просто не понимаю как написать тесты.
Вот само задание: Метод dayN должен возвращать значение дня недели полученной даты, однако содержит логическую ошибку. Напиши модульные тесты для этого метода и по выполнении тестов исправь ошибки в коде.
В самом коде вообще не понять, для чего нужны переменные a, b, c, result, некоторые переменные не объявлены, хотя может так и нужно и вообще не понятно. Как с помощью тестов найти логические ошибки в коде?
Как я понимаю, для начала нужно проверить, что возвращает метод с помощью asserEquals, также с помощью try catch проверить ловятся ли исключения, если передать туда к примеру пустой год или месяц, а дальше какие еще тесты можно сделать?
Да и вообще, как нужно мыслить, должен ли я представлять, что не вижу тело метода и вижу только сигнатуру?
Честно, говоря этот метод очень запутанный и я вообще не могу понять как он должен работать.
У меня есть примерно то, что будет на зачете. Для тех кого вырвиглазит вот ссылка на код https://ideone.com/WzzC74
public class Collection{
public static String week[] = { "monday", "tuesday", "wednesday",
"thursday", "friday", "saturday", "sunday" };
public static int number[] = { 0, 31, 59, 90, 120, 151, 181, 212, 243, 273,
304, 334 };
public static boolean leap(int rok) {
return ((rok % 4 == 0 && rok % 100 != 0) || rok % 400 == 0);
}
public static int dayN(int day, int month, int year) {
int dayYear;
int a, b, c;
int result;
dayYear = day+ numberDay[month- 1];
if ((month > 2) && (leap(year) == true))
dayYear++;
a = (year - 1) % 100;
b = (year - 1) - a;
c = a + (b / 4);
d = (((((b / 100) % 4) * 5) + c) % 7);
d += dayYear - 1;
d %= 7;
return f;
}
}
Я, конечно, почитал как писать тесты, какие вопросы задавать, но когда доходит до практики, то я просто не понимаю как написать тесты.
Вот само задание: Метод dayN должен возвращать значение дня недели полученной даты, однако содержит логическую ошибку. Напиши модульные тесты для этого метода и по выполнении тестов исправь ошибки в коде.
В самом коде вообще не понять, для чего нужны переменные a, b, c, result, некоторые переменные не объявлены, хотя может так и нужно и вообще не понятно. Как с помощью тестов найти логические ошибки в коде?
Как я понимаю, для начала нужно проверить, что возвращает метод с помощью asserEquals, также с помощью try catch проверить ловятся ли исключения, если передать туда к примеру пустой год или месяц, а дальше какие еще тесты можно сделать?
Да и вообще, как нужно мыслить, должен ли я представлять, что не вижу тело метода и вижу только сигнатуру?
Честно, говоря этот метод очень запутанный и я вообще не могу понять как он должен работать.
У меня есть примерно то, что будет на зачете. Для тех кого вырвиглазит вот ссылка на код https://ideone.com/WzzC74
public class Collection{
public static String week[] = { "monday", "tuesday", "wednesday",
"thursday", "friday", "saturday", "sunday" };
public static int number[] = { 0, 31, 59, 90, 120, 151, 181, 212, 243, 273,
304, 334 };
public static boolean leap(int rok) {
return ((rok % 4 == 0 && rok % 100 != 0) || rok % 400 == 0);
}
public static int dayN(int day, int month, int year) {
int dayYear;
int a, b, c;
int result;
dayYear = day+ numberDay[month- 1];
if ((month > 2) && (leap(year) == true))
dayYear++;
a = (year - 1) % 100;
b = (year - 1) - a;
c = a + (b / 4);
d = (((((b / 100) % 4) * 5) + c) % 7);
d += dayYear - 1;
d %= 7;
return f;
}
}
HtmlUnit
Никак, выброси это говно на помойку
>Напиши модульные тесты для этого метода и по выполнении тестов исправь ошибки в коде.
Нет слов, пидорасы.
Пидорашка?
Да, но в Польше учусь, просто перевёл названия метода и переменных на англ, чтобы было понятно, но не все заметил
Блядь бомбит.
// порядковый день в году
dayYear = day+ numberDay[month- 1];
// если год високосный и месяц волшебны(???)
if ((month > 2) && (leap(year) == true))
// +1 день в году
dayYear++;
// полный год в столетии для 1995 даст 94
a = (year - 1) % 100;
// полные столетия для 1995 даст 1900
b = (year - 1) - a;
// (???) с = 94 + (1900 / 4) = 569
c = a + (b / 4);
// (???????????) хуй знает жпг но наверно где-то сдесь запрятана дата начала полной недели
d = (((((b / 100) % 4) * 5) + c) % 7);
// магический день прибавляем к числу дней в году
d += dayYear - 1;
// ну тут понятно
d %= 7;
return f;
КАКОЙ СУКА АЛГОРИТМ @ В ЧЕМ СУТЬ
ПИШИ ЮНИТ ЕБ ИХ МАТУШКУ В ПЕРДАЧЕЛО ТЕСТЫ ПАДЛА ОТЛАВЛИВАЙ БАГИ
АЛГОРИТМ ОН ПИДОРАС СПРАШИВАТЬ БУДЕТ
Блядь бомбит.
// порядковый день в году
dayYear = day+ numberDay[month- 1];
// если год високосный и месяц волшебны(???)
if ((month > 2) && (leap(year) == true))
// +1 день в году
dayYear++;
// полный год в столетии для 1995 даст 94
a = (year - 1) % 100;
// полные столетия для 1995 даст 1900
b = (year - 1) - a;
// (???) с = 94 + (1900 / 4) = 569
c = a + (b / 4);
// (???????????) хуй знает жпг но наверно где-то сдесь запрятана дата начала полной недели
d = (((((b / 100) % 4) * 5) + c) % 7);
// магический день прибавляем к числу дней в году
d += dayYear - 1;
// ну тут понятно
d %= 7;
return f;
КАКОЙ СУКА АЛГОРИТМ @ В ЧЕМ СУТЬ
ПИШИ ЮНИТ ЕБ ИХ МАТУШКУ В ПЕРДАЧЕЛО ТЕСТЫ ПАДЛА ОТЛАВЛИВАЙ БАГИ
АЛГОРИТМ ОН ПИДОРАС СПРАШИВАТЬ БУДЕТ
Учебная же задача. Шарика есть говно дрессируют.
>какие еще тесты можно сделать?
високосный/невисокосный год
месяц больше/меньше двух
любые 7 дней месяца подряд
28 тестов короч.
>передать туда к примеру пустой год или месяц
Входные диапазоны не надо проверять.
Что это даст? Ничего кроме факта, что где-то что-то не работает. А как пофиксить хз, ладно с датой можно совлать, но в реальном коде это пизда.
Удваиваю prlang.
KISS + YAGNI
Не путай гит (скв) и гитхаб (социалочка для кодеров с хостом проектов на основе гита)
Чтобы вкатиться на гитхаб регаешься там, делаешь репозиторий, качаешь клиент (желательно git for windows, ну и морду для него типа tortoisegit). Затем клонируешь свой репозиторий на рабочий компьютер и работаешь.
Если ты о гите как о системе контроля версий, то там есть несколько основных команд.
Clone - сохранить содержимое удаленного репозитория
Commit - найти произведенные изменения относительно какой-то предыдущей версии
Push - залить изменения в репозиторий
Есть еще разные команды для откатов, переключения веток, фиксов конфликтов, но это сам гугли.
git - это граф patch'ей, только и всего
Я думал, на гитхабе принципы те же. Алсо, я даже терминологии толком не знаю, ну и структуры сервиса. Где посмотреть список проектов, где у проекта багтрекер, как слить себе проект, как потом с ним работать, что делать, если я обнаружу ранее не известную проблему или вдруг что-то исправлю и т.д.
а как это на тестах показать? какую ассерцию юзать? приведи хотя бы один пример
Делаю бота для lineage 2.
Картина примерно такая вырисовывается - Программа лаунчер у которой есть гуи и с помощью которой осуществляется запуск окна игры + процесса бота. То есть у каждого процесса игры свой процесс бота и единый центр управления всеми окнами. Из того что удалось нагуглить на тему взаимодействия между процессами, вроде как сокеты мой вариант. Менеджер окон сделать сервером и боты к нему будут коннектится и ждать команд.
В данной теме абсолютный ньфаг, только сегодня узнал про сокеты а бота вообще начал делать неделю назад. Поэтому хотелось бы критики и советов от кого нибудь более сведущего в теме.
Какой у тебя опыт в программировании? А в программировании на шиндоус? А в серьезном программировании на шиндоус?
Это я к тому, что на абсолютном большинстве серверов в клиенты встроена какая-никакая защита от ботов и уже нужно поебатся что подключить бота к клиенту.
http://www.programmersforum.ru/showthread.php?p=1574201#post1574201
В теле первого цикла обнуляешь сумматор
В теле третьего цикла внутри условия добавляешь в сумматор найденные одинаковые элементы. Видимо, что бы добавить первый одинаковый элемент придется объявить дополнительную переменную флаг и в теле второго цикла его сбрасывать, а внутри условия в третьем устанавливать. Некрасиво, костыльно, но мне лень думать.
Ну и после прохода второго цикла, соответственно, организовать вывод результата в теле первого, в качестве флага нахождения искомых элементов можно использовать значения сумматора( значения сумматора нулевое = одинаковых элементов не найдено).
Мне посоветовали JS, но мне больно от него. Может это моя тупость, но опыта программирования у меня нет никакого, у нас в школе до 11 класса учили двигать мышку.
Придумал такой вариант для суммы элементов: создаем дополнительную переменную, перед третьим циклом приравниваем 1. Внутри третьего цикла вместо увеличения значения сумматора инкрементируем эту переменную. После выхода из этого цикла проверяем изменилось ли значение переменной, если да, то увеличиваем сумматор на тот элемент, на равность которому проверялось в цикле, увеличенный на величину повторов этого элемента, получившиеся в переменной.
>>636819
Опыта минимум. Просто интересно очень. Пишу на автоит. Сервер не оф, старые хроники. Словил бана при попытке воспользоваться чем серьезным и как то наткнувшись на автоит начал по тиху писать атоматизацию всякой рутины - крафт, рыбалка, фарм, автологин и управление несколькими окнами. На автоите все прекрасно работает и вообще не палиться.
Еще раз прочитай мой первый пост. Для того что бы рулить кликерами в нескольких окнах. Автоит поддерживает отправку нажатий в окно не в фокусе. Да и то что нельзя сделать не в фокусе, легко обходиться тем что окнами управлять в автоите миллион функций. Короче. Какая разница зачем. Я сказал чего я хочу, как я буду это пробовать делать и в чем я могу ошибаться - есть ли варианты по лучше. Понятно что еще один l2walker я не напишу.
У тебя все процессы на одном компьютере или на нескольких? Если на одном, запусти еще одно окно кликера, который будет управлять остальными кликерами, лол.
Напал на след загрузчика ресурсов.
Есть команда, которая соответственно что-то делает с объектом ресурса.
[code]
resource = (Resource )maybeResProcessMethod[type](pak, (char)crc_1);
[/code]
Resource - структура, поля которой по большей части надеюсь ясна
pak - точно не знаю, но думаю указатель на что-то связанное с файлами архивов игры
crc_1 - CRC-32-IEEE 802.3 имени файла храню его в UINT, каст кривой там пофикшу
type - enum-ка с номером типа данных.
А вот maybeResProcessMethod - Массив указателей на функции для обработки ресурса в зависимости от типа
как сделать в иде, чтобы эта хрень имела тип Resource ResProc(UINT, UINT)?
Немного в другой функции, которая надоумила меня на структуру Resource, поле type вытаскивается из неё вроде бы как 1 байт, а функция внутри которой вызывается строка выше имеет прототип
[code]
int __cdecl bLoadPackageResources(UINT pak, const char resName, ResourceType type, UINT group)
[/code]
вместо ResourceType, которую во вкладке Enums я определил шириной в 1 байт стояло int. Безопасно ли явно указывать в прототипе этот тип или могут всплыть какие-то камни? Например теперь когда прототипе переименовываю что-то у переменной, которую я переименовал из int return в Resource resource, слетает тип в int
У процессов бота нет гуи. Это просто скомпиленый экзешник. Который связываеться по wHnd конкретным окном. И содержит всякие функции аля - логин(имя, пасс), крафт(название, количество) и т.д и тп. Процесс живет пока запущено окно игры. И вот к этим процессам я и ищу способ как обращаться - выполни функцию такую то, с такими то параметрами.
блин в
> Resource ResProc(UINT, UINT)?
макаба звезду съела, конечно там должен указатель на Resource возвращаться.
Пр, помоги придумать/найти алгоритм извлечения квадратного корня для Машины Тьюринга.
Только что узнал, что в моем городе вообще нет вакансий на джуна. Только мидлы и сеньоры. Блядь. Хотел учить Java’у (там, конечно, больше вакансий в целом) и фронт-энд, но увиденное лишает меня мотивации. С некоторой степенью обучаемости и небольшим стаком в виде Java (и Spring, если смогу дойти), Javascript, HTML, CSS и SQL можно ли будет пробиться на фриланс/удаленку (хочу упороть до лета, около десяти-пятнадцати часов в неделю учебы), чтобы иметь стабильных 10к рублей в месяц (я студент)? Если да, то не могли бы накидать приблизительную программу?
Может попробуешь позвонить в ближайшие конторы, и спросить не нужен ли им стажер за еду? Думаю, кто-нибудь за 10к/мес к себе в офис живность в лице тебя возьмет.
У меня недомиллионник. Да и я сперва хотел посмотреть сами требования, а потом под них адаптировать некую «программу обучения».
ясненько, я то подумал что ты инжектишся и дальше работаешь, а тут автоит-господин
Уже втыкаю. Просто пиздос, сколько понаписать придется. А у других, бля, деление-сложение максимум.
Ты сам не можешь придумать или нагуглить алгоритм извлечения квадратного корня?
Посмотрел дайджест стажировок. Из привлекательного андроид и веб (но есть айось и все такое). На веб нужен шарп/руби. Стоит ли? Если да, то что из?
А еще там JS и Нода.
Уже нагуглил. Но там дохуя всякого делать, мало ли, вдруг у кого реализация завалялась.
Меня интересует потыкать в какую-нибудь не очень актуальную, но прикольную хуиту.
Вообще очень простая хуйня. По сути перебирает все целые числа начиная с 0, до тех пор пока квадрат этого числа меньше или равен исходному. Соответственно выше написаны подпрограммы для удвоения числа в памяти, умножения 2х соседних чисел и сравнение.
Просто перевести и написать все по порядку.
Попробуй для эмулятора денди написать прогу. Может и конпелятор осилишь.
> сделать в иде, чтобы эта хрень имела тип Сходить в дизасм, в сегмент данных, где хранится этот массив и прописать по Y вместе с размером. Ну типа Resoure ptr (__cdecl ptr resourceMethods[размер])(UINT, UINT) ptr - звездочка.
> байт, int
Не совсем понял, что где слетает, но в общем-то, между передачей байта и инта через стек разницы особой нет. Может быть, где-то лишние касты появятся, но ничего не должно сломаться.
Не дает ну и ладно
>Arrays of voids and arrays of functions are forbidden
Вроде сделал массив вручную через num+звезда, но теперь куда-то пропал второй аргумент.
А, теперь получилось когда первый раз писал наверное вторую звезду потерял, но второй аргумент все равно не пишется там где она вызывается.
[code]
Resource (__cdecl LoadMethod[11])(UINT, UINT);
[/code]
data:0065591C
Я уже пофиксил, оказалось там каст перед ней был кривой, сделал что-то вроде force call type и все по местам встало.
А, ну отлично тогда. Как же у меня пригорает с этих вот префиксов у bFunctionName, ты бы знал!
Сам ракал, поэтому могу посоветовать на твой страх и рискосилить SICP или CISP - точно не знаю, как правильно пишется, точнее - пару основных моментов.
Думаю, лишним не будет.
Паскаль — устаревшая хуита, которая тебе в жизни не поможет. Учи любой язык, дальше продвинешься. Но лекции и все такое рекомендую не пропускать, если тебя интересует именно оценка.
It depends....
https://ideone.com/JwmTgd
Пробую разобраться:
Сначала вершина стека указывает на адрес 76 BC 33 7A
В памяти это выглядит так: 7A 33 BC 76, стек растет влево, 7A - вершина.
После заталкивания 2211h в стек:
11 22 7A 33 BC 76
После заталкивания 66554433h:
33 44 55 66 11 22 7A 33 BC 76
После выравнивания стека вершина снова указывает на адрес 76 BC 33 7A, но теперь данные в памяти выглядят так:
33 44 55 66 11 22 7A 33 BC 76
Жирным выделена вершина.
Что происходит при выполнении инструкции mov ecx, [esp - 6]?
От вершины мы двигаемся влево, до байта 33. Переворачиваем байты согласно архитектуре x86 и получаем ecx = 66554433h.
Я правильно все понял?
борду закоди
Хуй знает, чего ты хочешь добиться, и в чем у тебя проблема, но есть две вещи, которые ты должен знать:
1) В 32-битном коде в esp никогда не должны стоять младшие два бита (т.е., стек всегда должен быть выровнен на границу DWORD).
2) Никогда не читай по адресу меньше esp. Не используй адресацию через esp с отрицательным офсетом. Пока ты не уменьшил esp - это неподконтрольная тебе область памяти, которую ОС может портить, как ей угодно, без предупреждения.
Да, ты все правильно понял.
По-моему есть, ибо после того как я посмотрю вакансию, меня в тот же день просматривал этот работодатель.
Haskell
си
Норм пойдет, ну если, конечно, сам тоже не плох, личико там, попка круглая, ротик рабочий.
http://demin.ws/blog/russian/2009/07/30/elements-of-programming/
Имею:
>section .data
>str: db "ad majorem dei gloriam"
>...
>section .text
>xor al, al
>mov edi, str
>mov ebx, edi
>repne scasb
>sub edi, ebx
В результате edi = 0x0, отладчик пролетает инструкцию за раз. ЧЯНТД?
Тот язык, на котором она написана.
Теперь мой вопрос, почему везде советуют учить пидон как первый ЯП, ведь на нем какое-то невнятное говно пишут? Почему не С?
Потому что пистон на вид более приятный язык, нежели Си и именно он больше подходит для изучения базовых концепций (ибо юзер-френдли и имеет будущее). В то же время во всяких местах с устаревшей программой начинают учить с Паскаля и Делфи.
А Си... Си — это то, что новичку пригодится только в том случае, если он учится на системотехника.
Проще для новичков, хотя руби куда изящнее как по мне.
Потому что на Питоне можно показать практически все базовые понятия программирования и алгоритмы не платя оверхедом низкоуровневой работы с памятью. Для начинающего этого достаточно.
Почему невнятное говно?
Убедительно. А что скажешь насчет тк плохих языков? Вот к примеру пхп как первый язык никто не советует, типа он мозг повреждает. Про яваскрипт то же слышал. А в блоге одном милфа вообще функциональные языки нубам советует, хотя сама на плюсах пишет. Какое твое мнение на этот счет?
>PHP
Ты же знаешь, что одну и ту же задачу можно выполнить десятком способов обычно? Так вот, в силу отсутствия жестких стандартов и работы даже с ошибками (то есть, он их тупо игнорит чаще всего), а также относительной простоты в целом, он позволяет сделать говно (то есть, видимый результат не лучшего качества) за более короткий срок обучения, нежели любой другой (при изучении которого хочешь не хочешь, а выучишь стандарты) язык.
>JS
Не знаю, что ты слышал, но дело в динамической типизации, скорее всего (которая у JS по сравнению с языками со статической типизацией не просто странная, а, м-м-м, сверхъестественная). Видел где-то таблички с работой разных операторов сравнения на разных примеров.
Насчет функциональных ничего не скажу. Да и вообще я быдлан-студент, в силу учебы пришлось со всем этим пострадать.
>в блоге одном милфа вообще функциональные языки нубам советует, хотя сама на плюсах пишет.
Не Verity Stobb часом?
Спасибо!
Ну если ты про http://www.theregister.co.uk/2016/01/13/stob_remember_the_monoids/, то тётя в своём репертуаре. В качестве начинающего кидаться в ФП – не советую.
Ты шо э совсем э
Учи Scala
Яков Файн.
На PHP можно написать? Много строк будет? У меня впереди вся ночь и знания из PHP как писать Hello world, но умру но сделаю
> На PHP можно написать?
Разве что ты совсем ебанутый, но обычно браузерные скрипты пишут на джяваскрипте.
Можно ли такую флешку как-то оживить? Так была таблица со сбрученными в середине нулевых шестизнаками и фотками эмарьской школотян.
джава и джавскрипт - разные языки
Очень просто, берёшь и восстанавливаешь данные из ежедневного бэкапа.
>таблица со сбрученными в середине нулевых шестизнаками
>фотками эмарьской школотян
Ты бы такие важные файлы ещё на дискете держал.
И с чего начать-то?Хочу зарабатывать сидя дома.
>л?Е
Понимаешь, частью хорошего тона считается ставить пробел после большей части знаков препинания. В программировании куча соглашений относительно того, как надо писать код и именовать переменные, а ты простое грамматическое правило не осилил.
http://www.bestprogramminglanguagefor.me/ — на. Выбирай язык и дрочи уроки/мануалы/книги. В шапке есть литература, на доске тематические треды.
нормальных иде под с++ нет. пиши в любом текстовом редакторе и компилируй с помощью clang или gcc.
Когда ты обновляешь страницу, твой браузер делает запрос на серверы двача, а они тебе в ответ отправляют эту страницу. Код ты меняешь на странице, которая к тебе пришла, а не той, которая на сервере. Дальше хз :((((((((
станешь им
ладно, я запилил.
Юнити бери, там меньше ебли с таким будет. Сука, сегодня смотрел видосы с этим сраным кубиком из Хеллрайзера.
Слышь, я не совсем дебил, ясно? Я понимаю что меняю и написал что это нужно чисто для МЕНЯ. Алсо, ваш дебил гуманитарий вернулся с уже написанным скриптом посредством Greasemonkey и осталась единственная проблема: скрипт работает, при заходе на страницу он меняет нужную мне надпись, но СУКА страница перестает быть кликабельной. Я жму на различные ссылки с уже измененной страницы, а они не реагируют, щито делать? Сдается мне надо как-то завершение скрипта прописать, как в джавескрипте End всех циклов и функций делается подскажите?
> body.innerHTML.replace
Бля, поехавший, изменяй только тот элемент DOM который тебе нужен.
понял где накосячил, спасибо, анон, за то, что несмотря на мою непролазную тупость дал ответ Добра тебе няша!
Сам вчера смотрел, как же я разочаровался в первых трех частях. Надо было не пересматривать
А я то думал, щаз двачик то взламаю
кекнул.
Да иди нахуй тогда, мне сегодня блять надо а не через месяц, через месяц меня уже и может не быть. Собрались блять умные все такие, не могут простой хуйни по пальцам раскидать гуманитарию, ща методом тыка велосипед изобрету епта
Зашёл в раздел про программирование - значит научись программировать или уёбывай.
Можно, но нужен аппаратный дебагер. как ты дебажить собрался в системе с ебнувшим ядром, наркоман?
Так и скажи что ты нихуя сам не понимаешь ;)
Запукать ядро как отдельный процесс или в виртуалке.
Проблема в том, что
print(">RES 0:", res)
почему то выдаёт [''], хотя в first_word пустых строк нет вообще.
Пример вывода:
'.' in first_word False
'' in first_word False
' ' in first_word False
'.' in res[0] False
'' == res[0] True
' ' in res[0] False
>RES 0: ['']
.
В чём может быть проблема?
Просто просто за щекой чекни.
Ясно, придется юзать виртуалку и windbg. Решил просто от нехуй делать поучить ассемблер и написать сплойт под старую дыру в винде.
Есть упорядоченные массивы данных. Типа вот так:
[code]
relatives {
"Mom",
"Dad",
"Granny",
"Grand dad",
"Uncle Tom",
}
neighbors {
"John",
"Merry",
"Lisa",
"Bart",
"Homer",
}
[/code]
И есть массивы ссылок (аля выборки) на данные
[/code]
march_8_ppl {
relatives {
<Mom>, --------------> "Mom",
"Dad",
<Granny>, ------------> "Granny",
"Grand dad",
"Uncle Tom",
}
neighbors {
"John",
<Merry>, -------------> "Merry",
<Lisa> --------------> "Lisa",
"Bart",
"Homer",
}
}
[/code]
Нужно:
Массив ссылок должен оставаться валидным, если данные, на которые есть ссылки, удаляются (удалились определённые записи данных - удалились ведущие на них ссылки)
Ссылки могут указывать на другие ссылки и при удалении записи вся цепь ссылок разрушается.
* Возможность сохранять всё в файл и обратно.
Нужно ли мне смотреть в сторону какой-то СуБД или ещё чего? Можно ли такое провернуть в sqlite?
Пока что горожу свои велосипеды на С++ и Qt, но после появления всё новых выборок, сложность сбивает с ног уже.
Анон, я сейчас это спрашиваю и втайне надеюсь, что я как тот парень, который только в 20 лет понял, что мальчикам тоже можно садиться на ободок в сортире.
В общем, подскажи, как такое называется, и какие есть реализации. Спасибо, анон.
Есть упорядоченные массивы данных. Типа вот так:
[code]
relatives {
"Mom",
"Dad",
"Granny",
"Grand dad",
"Uncle Tom",
}
neighbors {
"John",
"Merry",
"Lisa",
"Bart",
"Homer",
}
[/code]
И есть массивы ссылок (аля выборки) на данные
[/code]
march_8_ppl {
relatives {
<Mom>, --------------> "Mom",
"Dad",
<Granny>, ------------> "Granny",
"Grand dad",
"Uncle Tom",
}
neighbors {
"John",
<Merry>, -------------> "Merry",
<Lisa> --------------> "Lisa",
"Bart",
"Homer",
}
}
[/code]
Нужно:
Массив ссылок должен оставаться валидным, если данные, на которые есть ссылки, удаляются (удалились определённые записи данных - удалились ведущие на них ссылки)
Ссылки могут указывать на другие ссылки и при удалении записи вся цепь ссылок разрушается.
* Возможность сохранять всё в файл и обратно.
Нужно ли мне смотреть в сторону какой-то СуБД или ещё чего? Можно ли такое провернуть в sqlite?
Пока что горожу свои велосипеды на С++ и Qt, но после появления всё новых выборок, сложность сбивает с ног уже.
Анон, я сейчас это спрашиваю и втайне надеюсь, что я как тот парень, который только в 20 лет понял, что мальчикам тоже можно садиться на ободок в сортире.
В общем, подскажи, как такое называется, и какие есть реализации. Спасибо, анон.
В MySql, например, определяешь FOREIGN KEY ... ON DELETE CASCADE
В общем случае подобное называется "целостностью данных". В твоем случае это вроде "ссылочная целостность". За таким должна следить субд, нужно настраивать и задавать правила, триггеры и подобное.
Расковырял пару функций предназначенных для считывания файлов даже нашел куда пишется заголовок пака, но теперь не понимаю как происходит работа со структурой FILE, например
[code]UINT __cdecl bkOpenPackage(const char pakName)
{
PakInfo info; // esi@1
char devider; // eax@5
int v4; // eax@9
__int32 v5; // ecx@11
void v6; // eax@11
int v7; // esi@12
int avail; // eax@13
void ptr; // eax@15
size_t count; // ST08_4@15
FILE file_; // ST00_4@15
int req; // [sp-4h] [bp-210h]@2
FILE file; // [sp+8h] [bp-204h]@1
char subFolder; // [sp+10Ch] [bp-100h]@3[/code]
...
[code]if ( LoadSingleFileBkg((const char )&file._cnt, &file, &subFolder, 0x100u, 1) == false )// 0x100u - max len of subFolder[/code]
В нее почему-то передается &file._cnt подразумевая имя файла
или
[code]ReadFile_byByte((FILE )file._ptr, info, 320u);[/code]
где передаются аргументы в стандартный fread
[code]size_t __cdecl ReadFile_byByte(FILE file, void ptr, size_t count)
{
return fread_(ptr, 1u, count, file);
}[/code]
Как избавляться от всех этих указателей на поля, которые использовать напрямую нигде не рекомендуют.
И что делать когда указатель на этот файл зачем-то используют как приемник для имени этого файла, например
[code]LONG __cdecl PakSize(const char pakName, BYTE someFlag)
{
FILE file; // [sp+0h] [bp-100h]@1
sprintf((char )&file, "%s%s", pakName, ".pc");
return PakSize((FILE )&file, someFlag);
}[/code]
Также в bkOpenPackage подсвечивается красным фоном какая-то переменная vC и не дает с собой ничего сделать.
И время от времени при открытии декомпиляции выдает предупреждение "Decompilation failure %адрес функции%: call analysis failed". Что странно такое происходит и с там где уже давно все изучил типа проверки диска в 4A1EE8, а в тех куда я раньше не мог из-за этого зайти теперь все работает.
Расковырял пару функций предназначенных для считывания файлов даже нашел куда пишется заголовок пака, но теперь не понимаю как происходит работа со структурой FILE, например
[code]UINT __cdecl bkOpenPackage(const char pakName)
{
PakInfo info; // esi@1
char devider; // eax@5
int v4; // eax@9
__int32 v5; // ecx@11
void v6; // eax@11
int v7; // esi@12
int avail; // eax@13
void ptr; // eax@15
size_t count; // ST08_4@15
FILE file_; // ST00_4@15
int req; // [sp-4h] [bp-210h]@2
FILE file; // [sp+8h] [bp-204h]@1
char subFolder; // [sp+10Ch] [bp-100h]@3[/code]
...
[code]if ( LoadSingleFileBkg((const char )&file._cnt, &file, &subFolder, 0x100u, 1) == false )// 0x100u - max len of subFolder[/code]
В нее почему-то передается &file._cnt подразумевая имя файла
или
[code]ReadFile_byByte((FILE )file._ptr, info, 320u);[/code]
где передаются аргументы в стандартный fread
[code]size_t __cdecl ReadFile_byByte(FILE file, void ptr, size_t count)
{
return fread_(ptr, 1u, count, file);
}[/code]
Как избавляться от всех этих указателей на поля, которые использовать напрямую нигде не рекомендуют.
И что делать когда указатель на этот файл зачем-то используют как приемник для имени этого файла, например
[code]LONG __cdecl PakSize(const char pakName, BYTE someFlag)
{
FILE file; // [sp+0h] [bp-100h]@1
sprintf((char )&file, "%s%s", pakName, ".pc");
return PakSize((FILE )&file, someFlag);
}[/code]
Также в bkOpenPackage подсвечивается красным фоном какая-то переменная vC и не дает с собой ничего сделать.
И время от времени при открытии декомпиляции выдает предупреждение "Decompilation failure %адрес функции%: call analysis failed". Что странно такое происходит и с там где уже давно все изучил типа проверки диска в 4A1EE8, а в тех куда я раньше не мог из-за этого зайти теперь все работает.
>ща методом тыка велосипед изобрету епта
Нихуя ты не изобретешь, криворукий даун. Тебе сказали, что нужно посмотреть. Селекторы CSS и основы DOM-модели для твоей задачи учатся за пять-десять минут. Нет, хочу кукарекать, что я гуманитарий и говорить, что плохие технари не могут нормально объяснить!
> sprintf((char )&file, "%s%s", pakName, ".pc");
Ну судя по sprintf и по стеку, там char filename[256]. Может быть, там структура или, скорее, union из FILE и filename, и оно в рантайме перезаписывается? Попробуй union сделать и посмотреть, не станет ли понятнее (по правому клику или Alt+Y можно выбирать поля union).
> vC
Это вообще охуенно. Там читается дворд по адресу 0x0000000c. Естественно, память по этому адресу не замаплена, и код будет крэшиться. Сейчас там mov esi,[0x0c], а по логике должно быть что-то типа mov esi,[esi+0x0c]. Скорее всего, там макрос или инлайн, в который случайно скормили NULL (ну типа #define FETCH_SIZE(struc) (struc)->size).
> call analysis failed
Где-то стековый фрейм и/или протип запорот. Найди функцию покороче, на которой вылезает, и банально убери в дизасме прототипы с каждого call. Потом возвращай по одному. По поводу вызова sub_4DC0A0 - она __cdecl, в аргументах void, а вот вызываемая в ней __cdecl sub_5785F0 возвращает QWORD, а не int (8 байт в EDX:EAX). IDA, видимо, где-то осознала это, а где-то нет. Смотри на дизасм.
Пожалуйста, адреса не забывай - у тебя-то база расковыряна, а у меня почти нетронута. Поэтому я предлагал чатик.
> такое происходит и с там где уже давно все изучил
При выставлении прототипов где-то, IDA проходит по всему файлу по ссылкам. Она старается не портить то, что определено юзером, но иногда какое-то изменение, например, случайное изменение размера структуры убивает с любовью поименованные стековые переменные в сотне других фунций. А c HexRays информация еще и через прототипы по базе расползается, но с менее фатальными последствиями.
Качай IntelliJ IDEA
[code]
0057E950 ; void __cdecl bkOpenPackage(const char pakName)
005820E0 ; size_t __cdecl ReadFile_byByte(FILE file, void ptr, size_t count)
0057ECD0 ; unsigned __int32 __cdecl PakSize(const char *pakName, BYTE someFlag)
[/code]
>4A1EE8 call analysis failed
Решилось проходом по вызову, декомпиляции sub_4DC0A0 и возвращении обратно.
>Попробуй union сделать
Не понял как это сделать
В 0057E950 дизасме выбираю file._cnt, жму alt+y, влезает окно и что дальше?
Я только иду пробую.
Он утонул.
В инст поздно в 24, работу с дневным хуй совместишь, а на заочке разницы с самообучением немного
Есть один плагин для одного сайта в хромоноге. В нем есть жава скрипт Суть его в чем.
Плагин парсит 2 значения на странице, потом делит одно значение на другое. Потом выделяет цветом определенный элемент на странице, если результат деления соответствует заданному.
Проблема в чем. Сайт видать что-то сменил в своем коде и теперь плагин не работает. Нужно пофиксить как-то, а то хуй знает когда разрабы раздуплятся.
Помоги разобраться, как правильно писать регулярные выражения для js, а то я в нем нихуя не понимаю. Ну или скажите сколько за это могут фриленсеры с меня содрать
Я изучаю 3 день, такая ошибка стала: если пробую сделать билд новой программы, она пишет:
========== Build: 0 succeeded, 0 failed, 1 up-to-date, 0 skipped ==========
При этом запускается старая программа.
Ты регулярные выражения скопировал бы сюда и привёл бы фрагмент того, что с их помощью парсили и как это стало выглядеть теперь.
Сам ньюфаг, прям сейчас пишу userscript, который будет подсвечивать листинги кода на одном из очень древних сайтов, так как без подсветки тяжело читать. То есть задача точно такая же, как у тебя: по регуляркам определить, что и как подсвечивать.
>как правильно писать регулярные выражения для js,
Так же, как и для остальных языков, не считая незначительных отличий, которые быстро гуглятся.
Как писать срипты для GreasyMonkey: http://hayageek.com/greasemonkey-tutorial/
>парсит 2 значения на странице
Основы. Ты из текста регулярками можешь определённое значение вычленить? Тогда получи исходник страницы (var source = document.getElementsBy___innerHTML), занеси в переменную, распарсь, получи 2 необходимых значения.
>Потом выделяет цветом определенный элемент на странице, если результат деления соответствует заданному.
Посчитал ты этот определённый элемент. Потом к переменной, содержащей исходник страницы примени метод replace(), первым параметром этот элемент, вторым - то, что заматчилось, обёрнутое в CSS-теги. Вот так: var res = source.replace(/hui/g, '<font color="red">$1</font>').
Все hui, которые встретятся в переменной, содержащей исходник, будут написаны красными буквами.
Потом заносишь это в DOM. Вот так: document.getElementsBy___innerHTML = res;
Читай пост, у которого 3 голоса: https://stackoverflow.com/questions/809423/writing-a-syntax-highlighter
Похожим образом работает: https://tohtml.com/
Кстати, вот это годная книга?
Я тот ньюфаг что хотел игры делать...
http://www.piter.com/product_by_id/44542399
Пробуй по очереди давать окнам фокус чтобы все действия бота гарантированно были в активном окне.
А ты выучи Haskell и сам сделай
Костыль дикий и как самый крайний вариант. Все таки в идеале хотелось что бы вообще из основного окна не вылазить и хоткеями отдавать кманды другим окнам -бафать, хилять и т.д.
Ладно, спрошу тогда еще как вариант
С помощью чего можно попытаться проследить и понять причину падения игры?
Обычно она падает вообще без ошибок. Когда окно не активно и на скрыто другими окнами. Но когда я уронил окно - отправляя в не активное нажатия клавиш, но при этом окно находилось поверх всех, ошибка таки вылетела.
С таким содержанием - this application has requested the runtime to terminate it in an unusual way
либо подскажите сайт или форум где с такими темами можно закатиться, я понимаю что тут больше кодят, а не ковыряются в чужик скомпиленых программах
И бамп вопросу на всякий случай
Читаю пикрелейтед, автор говорит, что ТДД это основа всего.
Мне похоже нужно прочесть все книги с оп-пика из колонки "Development", чтобы понять, как вообще писать, да?
Почитай журналы хакер или ещё какие статьи.
Вроде и по метасплоит фреймворку книги уже есть.
Ну и код других эксплоитов.
Это не то. Хотя и близко. Видимо, придется курить глубоко ассемблер и реверс-инженерию, ибо надо еще понять, а аак же именно сформировать отправляемые данные.
В дебаггере вешаешь брейкпоинты на все функции, которые приводят к завершению программы. Потом раскручиваешь кто их вызывает, определяешь триггер и патчишь чтобы он не срабатывал.
А перед этим нужно проверить exeшник на наличие пакеров и если он есть распаковать.
У меня проблема. не могу воедино соединить знания, когда мелочь какая-то либо, то понимаю, но сложные структуры строить вместе не получается? Как быть? Как это тренировать? ВРоде почти весь язык изучил, ну кроме потоков и еще там говна что на джуна не понадобится первое время. А в итоге толком не могу ничего придумать и сделать, а если что в интернет сразу лезу.
Я понимаю почему, но не знаю как доработать.
>[code lang="scala"]for (a :: b :: Nil <- Some(List(readInt(), readInt()).sorted); i <- a to b) println(i)[/code]
Что?
Замени while на if, после этого напили while и блок вывода, потом добавь слово else и ещё один блок с содержимым аналогичным первому, только с другим условием и декрементом вместо инкремента.
if(a<=b)
while(a<=b){вывод}
else(a>=b){вывод}
Доработанная программа
В начале книги написано что ты знаком с основными типами данных, умеешь конпелировать и знаешь про основные операторы.
Тащемта это самые базовые знания.
Обычно в корневой директории приложения, там же где и exe, в редких случаях в отдельной папочке config.
Допустим, есть функция mein() kampf.
В ней пусть будет такой содержание:
{
int a = 2, b = 3, c;
.....
}
Как реализовать сложение А и Б через функцию void, т.е. не через возвращение значения, а через указатели.
Я слишком туп для этого, пока что смог прогрессировать только до этого:
void mein(int a, int b, int c)
{
\tc = a + b;
}
int main()
{
\tint a = 2, b = 3, c,
\tmein(a, b, &c);
\tprintf(" %d ", c);
\tgetch();
\treturn 0;
}
Ах да, завтра экзамен. Мне пизда.
p.s. ритчи в гробу перевернулся
А не, обосрался.
макаба еще звездочки съела
Переобосрался и сделал сам. Спасибо двач
Создаю экземпляр HttpURLConnection.
Студия мне выкидывает методы для переопределения, пикрелейтед.
Не могу понять что писать в методе connect, похоже они все обновили, а документация осталась старая.
http://developer.android.com/intl/ru/reference/java/net/HttpURLConnection.html
Помогите, коданы, я в этой джаве недавно.
p.s. И почему он ругается на малформед урл?
Нужно вычленить слово, за которым идёт равно. Например из "foo bar='123' foo foo bar=12" нужно выдрать bar и bar
Регулярка простая: /\b(\w)+=/g
Но в следующем случае слово class захватывать не нужно:
<span class="keywords">if</span>
Тут суть в том, что за описанием класса следует знак >, который и определяет, вычленять слово или нет
ООП-ХУЙ
В контестке данной задачи это неважно, парсеры на основе Beautiful Soup и Simple HTML DOM я писал.
Повторюсь, нужно, чтобы из "foo aaa='123' foo bbb="123"> " вырезался только aaa, а bbb - нет, из знака >
>кидай ссылку на плагин и сайт, сделаю (просто так)
https://opskins.com сайт
https://chrome.google.com/webstore/detail/opdeals-find-the-best-dea/pnmifmjgoddkicidifnaenlagjcofomn плагин
>>638507
Я бы привел, да у меня нет примера старого хтмл кода сайта
>>638509
Спасибо буду обмазываться твоими мануалами
Сам лично смотрю на: go/scala/iOS/php/C++.
Дополню по работе плагина
Суть была в чем. При обновлении страницы он собирал цены с сайта. Брал текущую цену на предмет, потом среднюю цену на предмет. Делил одно на другое и получал процентное соотношение.
Потом, если процент соответствовал одной из заданных в опциях величин, он выделял рамкой предмет и писал значение процентов.
Сам скрипт
http://ideone.com/fork/RGBVIP
Бумп, действительно нужно, всё равно после 500 тайтла аниме меня достало, может хоть чем-то займу остатки мозка.
> Не понял как это сделать
Ну я имел в виду, что нужно сходить в Structures (или Local types), создать union, в котором два поля: указатель на FILE и указатель на char. В аргументах передавать не FILE ptr file, а ИмяТвоегоUnion file (не указатель!). Нужный вариант выбирать по Alt+Y. Но у меня все больше сомнений, что там именно так. Попахивает каким-то диким извращением. Гляну еще сегодня.
>>638325
radare2 крут, но по некоторым причинам (в частности, из-за отсутствия нормального нативного GUI) не подходит для серьезных применений ну там под линуксом что-то отдебажить - вполне, на конференции не светить ПРОПРИЕТАРЩИНУ в презентации - тоже, одну функцию в прошивочке по-быстрому отреверсить и поправить - вообще заебись, но если планируешь месяцами ковырять один и тот же бинарник, лучше сразу брать IDA, чтобы сэкономить себе время и нервы. Алсо, в radare2 дизассемблер, а в IDA есть еще и декомпилятор.
Ты совсем аутист, книгу нагуглить не можешь? Пиздуй учиться самому важному навыку для программиста - самостоятельно добывать информацию.
Нагуглить то могу, но вопрос о "нормальности" этой книги возникает. Я уже так пробовал Питон выучить, по учебнику написанному дауном.
> на васме был огромный архив статей по ассемблеру
Он остался, просто у них теперь там МОДНЫЕ ВЕЯНИЯ (не хватает только друзяшек), все вебдванольненько, поэтому нужную статью стало сложнее найти. Не нравится - google://wasm offline chm.
>по учебнику написанному дауном.
Если книгу всюду советуют, то её вряд ли написал даун. У меня плохие новости для тебя.
По питону только ленивый не советует Лутца, не поверю, что ты не читал советов выбирать именно его.
Не понравилось - почитай другую, которую советуют. Или забей на программирование и на мозговую деятельность как таковую, как как для кодинга много мозгов не нужно.
http://pastebin.com/L32V3bU3
А, все, сам разобрался. Сосите, ньюфаги)))
Чтобы понять, что книга говно, требуется не больше 30-и минут. Крупица по сравнению с тем, как много времени ежедневно смывается в унитаз.
Примеры:
1. За какое время я смогу выучить языкнейм устроиться на работу джуном/мидлом/сеньором на языкнейм в городнейм. Двух месяцев хватит?
НАХУЙ ИДИ МРАЗЬ ТУПАЯ
2. На каком языке я смогу зарабатывать фрилансом 500 баксов в месяц через два месяца?\
НАХУЙ ИДИ ЕБАНАЯ ШКОЛОМРАЗЬ
3. Устроился на языкнейм через n-ое кол-во месяцев/недель. Зарабатываю 1 в n-ой степени(000000000000)$.
ВСЕМ НАСРАТЬ НА ЭТО МРАЗЬ ТУПАЯ ПИЗДУЙ В БИЗНЕСАЧ ХВАСТАТЬСЯ ЗАРПЛАТОЙ СУКА
4. Уплотите налоги, фрилансеры, озозозо.
НАЛОГОВАЯ ИНСПЕКЦИЯ ТАМ ---> ТОВАРИЩ МАЙОР
5. А вот как выгодно фрилансить с курсом доллара, озозо, из Россиюшки.
ОБСУЖДЕНИЕ КУРСА ДОЛЛАРА И НАКОПЛЕНИЙ В ВАЛЮТЕ В ПОЛИТАЧЕ СУКА
Ах да, платиновый вопрос.
В 5/15/25/30/40/50/90/150 уже поздно идти в IT, дяя?(((
ДА СУКА СЪЕБИ
Ты зачем сюда из /b/ протёк?
Сам лично смотрю на: go/scala/iOS/php/C++.
Подскажите. Просто мне словно нужен человек который будет говорить - вот тут захуячь дикшнари - а вот сюда суй объекты, а вот тут так сделай.
Самостоятельности нет и не могу понять как что где применять
сам перекати
я вообще мимокрокодил и на жаву хуй клал
и на программирование вообще
как я сюда попал-то блять
Obj = {
"array1":[1,2,3,N],
"array2":[1,2,3,N],
"name3":"field3",
"nameN":"fieldN"
}
Нужно получить доступ к первому и второму массиву внутри объекта. Остальных параметров может быть больше, но в исходной строке первый и второй массив всегда идут именно в такой последовательности.
Пытался так: Obj[0], Obj[1] - не работает. Через оператор "in": for(var k in Obj) - я не могу быть уверен в каком именно порядки пройдут массивы.
Нужно получить доступ к первому и второму массиву внутри объекта в правильном порядке.
>>638301
>>638124
> bkOpenPackage
> if (LoadSingleFileBkg((const char )&file._cnt, &file, &subFolder, 0x100u, 1) == false )
Вот тут у тебя проблема. Там все очень просто. Второй аргумент - FILE ∗∗ (т.е., функция в переменную запишет указатель на открытый ею поток, поэтому ты должен дать указатель на указатель), а ты эту переменную определил как структуру FILE, немного запортив при этом стек. В первом аргументе - имя файла, который нужно открыть, 256 байтов. Как решить:
1) Кликаешь дважды по переменной file (которая по sp+8), попадаешь в окно локальных переменных.
2) Тыкаешь 'd' трижды, получаешь дворд, тыкаешь 'y', пишешь FILE ∗.
3) В следующей строке (офсет 200) тыкаешь 'a', получаешь няшный массивчик.
4) Закрываешь окно локальных переменных (Esc), нажимаешь F5 в декомпиляторе, чтобы переанализировалось.
5) Называешь как-нибудь новую переменную, прописываешь правильный (FILE ∗∗) второй аргумент в LoadSingleFileBkg, тыкаешь по ней 'x', повторяешь всё вышесказанное для остальных функций, в которых она вызывалась.
...
6) Профит извини за дезинформацию с union, я жопой код читал.
>приоритет оператора дереференса (!) ниже приоритета оператора доступа к полям записи (.), поэтому каждый раз приходится писать (!myrecord).myfield
>int -> int -> int и int -> (int -> int) - две разных несовместимых функции
>если в файле интерфейса функция объявлена как int -> int -> int, а реализована как 'a -> int -> int, компилятор заставит переделывать
>оператор пайпа влево (<|) имеет неправильную ассоциативность, поэтому a <| b <| c распарсится как (a <| b) <| c и будет означать хуйню
>не умеет каррировать внешние дуднетовские функции
>модули компилируются в статические классы, но открывать внешние статические классы как модули нельзя
>shadowing функций/значений на уровне видимости модулей запрещён
>f#
>int -> int -> int и int -> (int -> int) - две разных несовместимых функции
А тут-то что не так?
else не относится ни к какому if'у
>дезинформацию с union
До этого я про такую штуку вообще не знал. Может пригодится когда-нибудь.
Сделал как в инструкции, кажется починилось. Как определять что переменные не своего размера? Например в LoadSingleFileBkg есть переменная в sp+20Ch её тоже нужно сделать char[256]. Или в bkOpenPackage sp+10Ch?
И можно ли в окне локальных переменных смотреть их содержимое? У меня во время дебага тут только знаки вопроса.
Бампецкий.
В bkOpenPackage все гладко, но в других функциях которые вызывают LoadSingleFileBkg все передается через агрумент.
[code]
BOOL __cdecl PakSize(FILE file, BYTE someFlag)
{ //.text:005669B0
...
result = LoadSingleFileBkg((char )&file->_ptr, &file, 0, 0, 0);
[/code]
Здесь нужно делать новую переменную в прототипе под строку с названием файла?
Что-то вроде
[code]
BOOL __cdecl PakSize((char fileName, FILE file, BYTE someFlag)
[/code]
Вот еще пример.
[code]
unsigned __int32 __cdecl PakSize(const char pakName, BYTE someFlag) //.text:0057ECD0
{
char fileName; // [sp+0h] [bp-100h]@1
sprintf(&fileName, "%s%s", pakName, ".pc");
return PakSize_((FILE )&fileName, someFlag);
}
[/code]
Может это все-таки объединение здесь?
Эта функция, кстати вызывает ту что из предыдущего поста, там немного другой прототип
[code]
unsigned __int32 __cdecl PakSize_(char *fileName, BYTE someFlag)
[/code]
Как можно объяснить, почему следующие инструкции вычисляют остаток от деления на степень двойки?
dec ebx ; в ebx - степень двойки
and eax, ebx ; в eax - число, остаток от деления которого на степень двойки мы ищем
Число степени двойки это нескольконулей1нескольконулей в двоичной системе, после декремента получается наодиннольбольшеВсеостальноеединицы. После сравнения andом нужного числа с этой маской что-то типа сдвига вправо, а потом влево на степень двойки.
Типа
mov ebx 0b00100000; 2^6
Dec ebx; 0b00011111; 31d
Mov eax 0b11111101; 251d
And eax ebx; 0b00011101 = 251 % 32 = 55
считал в уме, мог проебаться в комментариях
матерей ебал
Сам лично смотрю на: go/scala/iOS/php/C++.
В чем здесь проблема - понял. Буду добавлять новые элементы в конец и хранить хвост списка в структуре.
А в каком конкретном месте циклится?
>\tscanf("%d", &in);
>\twhile(in != EOF){
вот это какая-то подозрительная хрень.
Сначала я вообще хотел сделать while(scanf("%d", &in). Интересно, так можно? Раньше читал, что в си есть куча разных идиом, в том числе типичные способы ввода в цикле, но уже не помню.
Охуенный сайт хакерранк. Доставляет, когда задачи принимаются.
Можно прострелить себе ногу, читая из потока по байтово беззнаковый char, тогда eof нельзя будет отличить от обычного символа. Еще при каких-то условиях его пропустить и чтение потока зациклется может у тебя это и было.
while (scanf("%d", &in) == 1).
scanf возвращает количество прочитанных полей. если вернул меньше чем надо, значит файл закончился.
Ломал голову над вставкой элемента в список после того, как в нем уже есть один элемент. Сначала в первой ветке if было так:
lst->head = item;
lst->tail = item;
Вот второй так:
lst->tail->next = item;
И когда вставляется второй элемент, ссылка head->next не обновлялась. Поэтому выводился только первый элемент. Решил проблему, сделав в первой ветке lst->tail = lst->head;
А шо, в жаваскрипте можно писать return и возвращаемое значение на разных строчках?
https://ideone.com/Y1p2pP
1) Если список пуст, новый элемент делаем головой
2) Если не пуст, доходим до конца и вставляем в конец. На сайте указатель на хвост не хранится в структуре, поэтому приходится итерировать каждый раз.
Остановились, когда p стал NULL. Но в p у нас адрес памяти, где располагается пустой хвост. Создаем хвост в этом месте памяти, заполняем. Почему он не сохраняется?
Она упрощает вставку в конец.
Инсерт обычно подразумевает вставку в указанное место. Если в конец - это append. Затем, тебе не нужно идти по всему списку в конец, т.к. последний элемент у тебя уже на руках - tail. Чтобы вставить в конец: на tail.next вешаешь новый итем, и потом объявляешь этот итем хвостом. Все будет работать, если ты в предыдущих операциях не забывал следить за актуальностью head и tail.
>т.к. последний элемент у тебя уже на руках - tail
Это у меня он в руках, а на сайте список создается тупо. Там только итерировать до конца.
Читаю жопой. Я в плюсах не силен, но что-то сомневаюсь, что у NULL есть свой адрес в памяти. Я бы итерировал, проверяя p.next на нулл, а не p. Потом создал бы новый объект и линканул его в p.next.
> хватит простенького контроллера с вшитой asm программой-алгоритмом кручения барабана и работы слива
А других вариантов, тащемта, нет. Разве что, пишут там на С
Пиздец картинка, чуть глаза не вытекли
На джаве. Язык специально разрабатывался под програмирование холодильников и стиралок.
Меня на работу зовут какие-то ебанаты. Они обещают неплохо платить (80к). В два приёма. Они находятся недалеко от моего дома.
Но, блядь, на собеседовании у меня нихуя технического не спрашивали. Тестового не давали. Ну, вернее, давали, но это хуйня, а не тестовое. Завтра иду к ним в офис "устраиваться работать".
Интуиция моя просто вопит "тебя наябывают!". Но в чём конкретно я понять не могу.
Не, если мне попытаются впарить платные курсы или какой-нибудь амвей - я их пошлю нахуй и спокойно уйду.
Но блядь, жопой чую - всё не так просто.
Какие вообще могут быть подводные камни, кроме невыплаты аванса через две недели (после чего они, опять же, пойдут нахуй)?
Устроился на 105к практически по такой же схеме, не наебывают, но зп задерживали пару раз уже. Но выплачивали в итоге. Смотря на чем ты там пишешь, я вот на йоба extjs, который ценится очень прилично, а по сути у меня и опыта нет и вообще джун, который просто упоролся архитектурой приложений и выдает себя за сеньора, пока никто не спалил.
У меня банальные плюсы, так что выбор есть.
Прошлое место работы - нихуя не гугол, чтобы брать выходцев вслепую.
При этом ни собеседование, ни тестовое никак не показывают мои навыки.
Мне тут предложили версию, что меня выгонят после испытательного - но мне это, в целом, похуй. Всё равно работу ищу пока на перекантоваться пару месяцев.
Я тоже двощеров начитался и теперь морально готов, что меня пидорнут после стажировки. Хожу на работу с установкой получить за время испытательного срока максимум экспы.
Да. Еби его в эти два порта.
> 005669B0
Вот же бля. Это оптимизация. Функция принимает const char ∗ filename первым аргументом, но так как этот аргумент используется лишь однажды (т.е., передали в LoadSinglePackageBkg, и с тех пор нам указатель на имя файла не нужен), то компилятор (а может быть, даже человек) решил не создавать новую переменную, а повторно использовать const char ∗ filename, но уже в качестве FILE ∗. Машинное представление этих двух указателей идентично, и все работает. До вызова - это указатель на строку, после - указатель на FILE. "Расщепить" переменные нельзя. Могу предложить лишь оставить, как есть - после объявления PakSize(const char ∗filename, BYTE flag) код получается с кастами, но вполне читаемый. Ну или union двух указателей использовать, но это не очень красиво, когда особенности реализации будут торчать в прототипе.
Вообще, переиспользование переменных компиляторами - достаточно частое явление в оптимизированном коде, привыкай. Тут у тебя хотя бы обе - указатели, а бывает ведь и int, засунутый в кусок double.
> Как определять что переменные не своего размера?
> bkOpenPackage sp+10Ch
Можно сразу по 'y' прописать массив с размером. Но я предпочитаю сходить в стек по даблклику и исправить переменную там, чтобы точно знать, что я делаю.
Так ты уже с опытом? Тогда не очкуй, так оно в жизни и бывает.
>>638727
>>638724
Успехов тебе, няша, от всей души!
Я когда-то тоже программистом был, сложные MVC приложения писал. Успел даже в крутом аутсорсе повариться. Ничего, все еще впереди. Главное не падать духом!
https://www.youtube.com/watch?v=KlzWDdELOAY
Например ты можешь написать приложение, с использованием спринга
Работа не нужна, учи Haskell
И с первой лекции какие-то формулы, матрицы и тд.
А в зарубежных с тобой носятся как с дебилом, все разжевывают и маленькими шажками подводят к знаниям. И их интереснее, конечно, смотреть.
https://www.udacity.com/course/viewer#!/c-ud120
А вот что в результате лучше и полезнее я не знаю.
аутизм и навязчивые состояния
Попробуй глянуть в сторону системного администрирования или эникея епт
>>640003
Пофиг с чего, можно вообще видео лекциями на ютубе первое время перебиться я бы советовал по паскалю. Главное понять основные структуры языков высокого уровня блоки команд, ветвления, циклы, функции и типов данных от байта до сложных структур и указатели. Попутно решай задачи по пройденной теме.
Потом ты либо дропнешь, либо перекатишься на ходовой язык для продакшона с ооп и паттернами.
Все зависит от того, на какую зарплату ты претендуешь. И от скила.
Знаю чуток понемногу (шарпа, кресты, джува) , но не сильно, на уровне пиздивания, осмысления и понимания чужих лаб и кода. Теоретически что-то могу сам. Наверное. Не могу себя физически заставить самому писать код. Короч вопрос: хочу научиться нормально кодить, на джуве наверное, ибо самое востребованное. Также посоветуйте что-нибудь полезное и профитное в плане работы, но связанное меньше непосредственно с кодингом. Как говорил, я - не совсем с нуля, но и не совсем нормально. Какие курсы проходить , что читать? спасибо
Что за вуз и специальность? А главное по каким результатам егэ прошел?
кажется у меня сейчас полыхнет
Дианон. Егэ сам писал, хуле там писать то? 250 по трём где-то. Инфу сдавал. Вуз тоже легко закончил, учится не напряжно было. Где то учил, где то списывал, где то готовое брал - как обычно все. Лёгкие лабы сам делал, на первом курсе так вообще шарил большей частью даже. Потом обленился. Некоторые лабы, которые на парах давались, а не на дом, тоже делал, ибо все вместе разбирался и ходили. Типо maple или ещё такой побочной хуйни. Вообще, на мой взгляд, вуз легко закончить, если ХОДИТЬ. Ну и не совсем конченным быть и что то хоть делать.
>ленивое чмо
Наверно, без работы сидишь, или больше 15к не зарабатываешь?
>учится не напряжно было
Учиться и получать образование - разные вещи. Знания и науки - разные вещи.
Мне кажется меня всегда наебывали с пхп о том, что он говно ебаное чтобы была меньшая конкурентность.
Perl, PHP, Python, Ruby, Lua - скриптопараша.
Содержимое скриптопараши - динамикодрисня.
От так от было.
>хорошие аналитики/манагеры
Андрей Орлов, "Записки автоматизатора".
>Вот устраиваешься ты аналитиком
Марат Мусин, "Бизнес в стиле распил".
Так кто ж спорит? Я анону отвечал. Так по советам дельное будет что то?
>Знаю чуток понемногу (шарпа, кресты, джува) , но не сильно
Короче говоря, ты скакал как проститутка по языках в надежде найти ТОТ САМЫЙ язык. Забей на программирование, интереса к нему у тебя никогда не было. Ты зря потратил 5 лет учебы. У вована вон в 22 года уже свой бизнес, машина и квартира, а ты так и живешь в съемном клоповнике.
>PHP
Ты же знаешь, что одну и ту же задачу можно выполнить десятком способов обычно? Так вот, в силу отсутствия жестких стандартов и работы даже с ошибками (то есть, он их тупо игнорит чаще всего), а также относительной простоты в целом, он позволяет сделать говно (то есть, видимый результат не лучшего качества) за более короткий срок обучения, нежели любой другой (при изучении которого хочешь не хочешь, а выучишь стандарты) язык.
>JS
Не знаю, что ты слышал, но дело в динамической типизации, скорее всего (которая у JS по сравнению с языками со статической типизацией не просто странная, а, м-м-м, сверхъестественная). Видел где-то таблички с работой разных операторов сравнения на разных примеров.
Насчет функциональных ничего не скажу. Да и вообще я быдлан-студент, в силу учебы пришлось со всем этим пострадать.
>написал что бакулавр
>5 лет
>сидит в pr и не умеет считать
Так то лабы на разных языках были. А интереса нет аможетиесть тут ты прав, но так то у меня его ни к чему нет, поэтому я себя пересилю, не беспокойся.
Блять нуфаг тред а за 5 постов хуй помогли советом, не то что ссылкой. Думал что такие отбитые только в /б сидят.
Быдло порвалось. Неужели было непонятно, что вуз не привьет тебе интерес к программированию, если его никогда не было?
Хуй на, ты всё равно останешься питонодауном который даже C не осилит, не говоря уже о крестах. Просто забей и иди делай сайтики на джанге.
Шапку смотрел? Список литературы видел?
Я не делаю сайтики, я занимаюсь серьезной компьютерной наукой. По делу есть что сказать?
Я тебе сказал путешествовать нахуй.
Я не тот анон из вуза, я мимо спросил про то, как найти свою область.
Я ещё даже вуз не закончил, программировать начал когда был пиздюком, декомпилил конфиги игрушки и переписывал статы машинкам чтобы они ездили быстрей.
А такие как ты, хуисосы, только и могут, что якобы выёбываться, и говорить про чей-то разрыв в интернете.
>декомпилил конфиги игрушки и переписывал статы машинкам чтобы они ездили быстрей
Ого, настоящий тыжпрограммист. Тут многие кочали брутилки для асек в нулевые и добавляли в чужие вирусы строчку invoke WriteConsoleA, stdout, "Goodbye world, you'r hacked", но так и остались хуесосами.
>Блять нуфаг тред а за 5 постов хуй помогли советом, не то что ссылкой. Думал что такие отбитые только в /б сидят.
Полно тредов по всем языкам - сиди, изучай. Ты не можешь не то что в гугл, даже доску пролистать тебе лень. Отбитый тут только ты. Забудь про программирование.
Другой анон
this
https://books.google.ru/books?id=wCZJCAAAQBAJ&pg=PA4&dq=%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5+%D0%BD%D0%B0+iOS+%D0%B4%D0%BB%D1%8F+%D0%BF%D1%80%D0%BE%D1%84%D0%B5%D1%81%D1%81%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D0%BE%D0%B2+3+%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%86%D0%B8%D1%8F&hl=ru&sa=X&ved=0ahUKEwi69_2MxdbKAhVqp3IKHeJMAVUQ6AEIKjAA
Не могу найти
Ты идёшь нахуй. Я не понимаю зачем ты зашёл в этот тред если не помогаешь. Ещё и постишь зачем то. Я спросил и про курсы, да и вообще широко очертил круг проблем. Может ГОДНУЮ книгу посоветуют, может ещё что то. Короче ты говно, которое дрочит на себя.
>>640197
Видел и даже 2 книги хортсмана читал. Перечитать и параллельно жавараш навернуть? Или есть получше что то? Мб вообще другой язык?
Толсто. С - для людей осознавших свое божественное начало. Я лишь жалкий человек.
а как можно знать яп и ничего на нем не писать? хеллоуворды что ли? циклы, задачки?
Спасибо, что уточнил, так бы никогда не догадался.
Да это то я пишу. Имеется ввиду прям сложное что то, проекты всякие.
http://oldfisher-mk.livejournal.com/532046.html
Есть ли какая-нибудь годная литература по j2me?
Пока только одну нормальную книгу удалось найти.
В 2000-е изучал j2ME по какой-то книжке средней толщины в оранжевой обложке, но не могу найти.
Да, эта та единственная нормальная книга, которую удалось найти.
1
- 9
____
Не вычитается. Делаем заем из воображаемого старшего разряда, получаем:
1 (11)
-
9
____
2
Пиздец, я в ахуе. Объясните мне.
А ты сам кодишь на нем? Посоветуешь может тогда и литературы для наиболее продуктивного изучения?
Ну -8. Мы вычитаен 9 не из единицы, а из воображаемого числа, у которого слева приписан еще один разряд, из которого делаем заем. Где я неправ?
не могу придумать как написать сранивалку покерных комбинаций
на джаве
так как цель - задроство с ооп, реквестирую мысли и дизайн паттерны которые могут помочь
Тебе в /un/
Чтонибудъ типа "как писать на питоне, чтобы не уткнутся в несовместимость версий".
>>640508
Зачем тебе поддержка стандарта в иде? Его должен поддерживать компилятор.
А по теме code::blocks или qtCreator, и конпелятор: mingw64 под спермой или gcc под прыщами.
и кстати, 11 стандарт протух, сейчас актуален 14. А уже в следующем году выходит новый
Инвентарь - iMac, iPhone 6s, пару Android телефонов.
Рассматриваю любое направление развитое на рынке труда.
Хотя сейчас почитал комментарии и люди совсем не довольны курсом от яндекса.
>и кстати, 11 стандарт протух, сейчас актуален 14. А уже в следующем году выходит новый
14-й ничем почти и не отличается, тем более для нюфага.
Новый стандарт раньше 17-19 года можно не ждать.
А что-нибудь еще есть? Может какие-нибудь блоги успешных манагеров, где описано как стать таковым?
>14-й ничем почти и не отличается, тем более для нюфага.
ньюфагам: пишите всегда на последнем-распоследнем стандарте, по возможности - новые стандарты устанавливают хорошие практики, а старые это костыли и днище
Есть ли у кого на примете модные/новые выступления штульмана? Чёто дико захотелось заслушать царя.
Инвентарь - iMac, iPhone 6s, пару Android телефонов.
Рассматриваю любое направление развитое на рынке труда.
Так при хорошем владении D, программист сам старается писать плюсовый код похожим на него, что заставляет человека использовать последние стандарты.
Ну блин стандартная библиотека же совсем разная. Нахрена потом транслировать одно в другое.
Вообще, конечно, мысль годная - писать референсную реализацию на каком-то метаязычке с мощной системой типов, дабы в компайлтайме максимум проверять корректность, писать нормальный обобщенный код, а конкретные реализации транслировать во что-то более приземленное - кресты, жс, и т.п.
>Ну блин стандартная библиотека же совсем разная.
если у тебя нет каких-то привычных тебе функций это же не повод писать костыльный говнокод
Ну например есть unordered map в новых крестах, и associative array в Dlang. С твоим подходом, надо помнить api и того, и другого. И так по каждой мелочи, слегка накладно.
кресты не нужны, очевидно
Ты придумал Nim.
Очевидная Scala
Гей-проституция
как нынче сайты создают? Есть какие то редакторы? Или какие то платформы?
Я не имею ввиду wordpress или подобные готовые движки. Я имею ввиду вот сделать сайт с нуля например на html5 с кучей наворотов.
Просто стоит задача сделать сайт заглушку для неких целей. Там будут кнопки для печати и прочие. php,JS,Jquery все дела. Набивать в блокноте можно, но в процессе не покидает чувство, что я работаю палкой с камнем, а не бензопилой. Подскажи анон, молю!
один анон хорошо, а два лучше.
Спасибо, но я почему то использую notepad++.
Решений прес ту Х ту вин энд эрн мани мани, мне не нужно (Ведь программа за меня не допишет JS\PHP код для реализаций действий и событий) , я говорю именно только за внешний вид. Потому что много времени уходит на создание и доводку конструкции сайта (блоками), каждый раз меняешь какой либо параметр, переключаешься в браузер, F5 и молишься чтобы вся верстка по пизде не пошла... (понимаю, отсутствие опыта)
Просто было бы удобно набросать макет сайта в какой нить проге, а потом уже вручную наполнить его скриптами и сценариями.
Дохуя хочу?
>
>Ребзя, поясните как и на чем программируют стиралки и холодильники?
Verilog и Co. А потом заказывают ASIC.
Мало кто свой чип разрабатывает. Обычно все же стоит МК какой-нибудь дешевый.
Есть кто-нибудь, кто готов взять стажёром на реальные проекты? Для начала бесплатно, конечно же. Обещаю пахать и не прокрастинировать: есть большое желание рыть рогом разработку ПО.
Направление не суть важно. Это может быть веб, Андроид, энтерпрайз, ещё что-то.
В целом да, но если до этого писал на каком-нибудь пистоне, охуеешь от этого говна мамонта и насколько всё неудобно в плане либ и т.д.
Я бы посоветовал брать джаву/сисярп, не знать бед и сохранить нервы.
Бутстрап
На нем и писал. К жавесярпу у меня какая-то личная неприязнь.
А в чем разница с и крестов сейчас? Где можно использовать
нет
Алгоритм используется для поиска известных последовательностей в потоке данных. Представляет собой конечный автомат, который переходит из состояния в состояние по мере прихода символов из известной последовательности. Если приходит какой-то символ, не соответствующий текущей последовательности, то конечный автомат не сбрасывается в RESET, а может перейти в другое состояние, соответствующее другой последовательности, если в принятых символах есть её начало.
Используется для сканирования файлов на сигнатуры вирусов.
Спасибо. через него вышел на то, что искал. А искал я https://ru.wikipedia.org/wiki/Алгоритм_Ахо_—_Корасик
До завтра нужно сделать 2 задания в матлабе. Если можнно напиши с объяснениями, как для дебила.
1)
clear all; close all;
s = tf('s');
%x(s^2+0.2s+0.02)=y(0.1s+0.03)
Y_x = (0.1 s + 0.03)/(s^2 + 0.2 s + 0.02);
>импульсная
impulse(Y_x)
>единичная переходная
step(Y_x)
2)
clear all; close all;
s = tf('s');
W_s = 2 (1+0.5 s)/(s^2 (1+0.3 s));
>АФХ, ЛЧХ
bode(W_s)
>запасы устойчивости
margin(W_s)
бесконечность по амплитуде, 12.7⁰ по фазе
>переходная характеристика замкнутой системы
step(feedback(W_s,1))
>Если можнно напиши с объяснениями, как для дебила.
Нет. Не учись, побольше сдавай нахаляву. Чем меньше ты знаешь, тем я ценнее как специалист.
Парсер съел звёзды. Заменил их на '⋇'.
clear all; close all;
s = tf('s');
Y_x = (0.1 ⋇ s + 0.03)/(s^2 + 0.2 ⋇ s + 0.02);
impulse(Y_x)
step(Y_x)
clear all; close all;
s = tf('s');
W_s = 2 ⋇ (1+0.5 ⋇ s)/(s^2 ⋇ (1+0.3 ⋇ s));
bode(W_s)
margin(W_s)
step(feedback(W_s,1))
>>641129
Как то ты круто расписал. Я вот как решил.
>> M=[0.1 0.03];
D=[1 0.2 0.02];
derD=polyder(D)
derD =
2.0000 0.2000
>> Alph=roots(D)
Alph =
-0.1000 + 0.1000i
-0.1000 - 0.1000i
>> A1=polyval(M,Alph(1))/polyval(derD,Alph(1))
A1 =
0.0500 - 0.1000i
>> A2=polyval(M,Alph(2))/polyval(derD,Alph(2))
A2 =
0.0500 + 0.1000i
>> t=0:2:80;
>> k=A1exp(Alph(1)t)+A2exp(Alph(2)t);
>> plot(t,k);
>> grid
>> A11=(polyval(M, Alph(1))/polyval(derD, Alph(1)))/1
A11 =
0.0500 - 0.1000i
>> A12=(polyval(M, Alph(2))/polyval(derD, Alph(2)))/2
A12 =
0.0250 + 0.0500i
>> k1=A11exp(Alph(1)t)+A12exp(Alph(2)t);
>> plot(t, k1);
>>641129
Как то ты круто расписал. Я вот как решил.
>> M=[0.1 0.03];
D=[1 0.2 0.02];
derD=polyder(D)
derD =
2.0000 0.2000
>> Alph=roots(D)
Alph =
-0.1000 + 0.1000i
-0.1000 - 0.1000i
>> A1=polyval(M,Alph(1))/polyval(derD,Alph(1))
A1 =
0.0500 - 0.1000i
>> A2=polyval(M,Alph(2))/polyval(derD,Alph(2))
A2 =
0.0500 + 0.1000i
>> t=0:2:80;
>> k=A1exp(Alph(1)t)+A2exp(Alph(2)t);
>> plot(t,k);
>> grid
>> A11=(polyval(M, Alph(1))/polyval(derD, Alph(1)))/1
A11 =
0.0500 - 0.1000i
>> A12=(polyval(M, Alph(2))/polyval(derD, Alph(2)))/2
A12 =
0.0250 + 0.0500i
>> k1=A11exp(Alph(1)t)+A12exp(Alph(2)t);
>> plot(t, k1);
И да, у меня военник, иди нахуй.
Решил так, как это предполагалось создателями матлаба. Как там у вас в вузике требуют, я хз.
Если вам численные методы объясняют, то, возможно, так и надо. Мне показалось, что это задача по теории управления, а матлаб нужен ровно для того, чтобы на него численную еблю с дифурами скидывать.
Результат похож. Способ решения ректальный, но валидный. Наверное, да.
По второму заданию
>Построить переходные характеристики для замкнутой системы, используя ППП Control System Toolbox
Это я верно сделал?
Скорее всего, он ожидает, что ты ему напишешь step(w/(1+w)), что по сути то же самое, если не читать раздел "Why Using FEEDBACK is Better".
Что бы понимать что мменно ты пишешь на более высокоуровенном языке. Если тебе на это похуй - забей.
Собственно, это ещё одна причина, почему айти стало ебаным. Ведь раньше кто был в программистах? Задроты и ботаны? — Да, но это были в основном идейные люди, а не сельское быдло, рванувшее в города за зелёным франклином. И зарплаты были в разы ниже (в гривневом эквиваленте), поэтому даже та босота, которая дорвалась до позиции разраба или тестера, и та — не сильно кидала понты. В последние пару лет уехала масса толкового народу, места освободились, и кто на них попёр? Пробивные провинциалы. Проблема лишь в том, что многие из них не то что не знают русский язык, но и даже свой родной украинский — и тот не осилили.
>Проблема лишь в том, что многие из них не то что не знают русский язык, но и даже свой родной украинский — и тот не осилили.
Какая разница, оба для ИТ одинаково нерелевантны.
Мертв. Да и под Win2003 какого-то сервис пака не пашет, вроде.
Руби
Обоснуй дерьмовость? Обычный MingW не умеет x64, а эти компиляторы практически копия gcc. А msvc слишком спермо-спесифик наверное.
Короче проще будет перекатиться на кросплатформенный кодинг.
На любой тех специальности мира.
>наверное
Ясн. Там полный бардак со всем - с версиями конпелятора, с библиотеками на винде с ними вообще пиздец, но тут перемешано стандартное говно как со спермы, так и с юникс подобных систем, с нормальной поддержкой IDE, постоянный пердолинг с переменными среды. Просто нахуй - если хочешь учиться а не пердолится с системой нужно ставить компилятор специфицированный под твою систему и не выебываться.
А лучше сразу поставить какую нибудь убунту - всегда последний gcc с последними стандартами, нормальная централизованная система репозториев - вообще все, что рвёт анус разработчику на сперме.
Годами использую mingw/clang/visual studio на сперме (без IDE). Никакого бардака, никакого пердолинга не заметил.
Ну шланг-то не годами, конечно.
Я тоже так думаю, что там происходит подготовка ОС к запуску программы, но хочется узнать об этом больше.
А можно от студии поставить только компилятор, либы и заголовки? Сатвить даже экспресс версию == засорять систему.
Экспресс не тру совершенно. Вообще, майкрософт обещала отдельно выпустить компиль 2015 Update 1. Погугли, может уже выпустили. А я просто ставил на виртуалку студию целиком и забирал оттуда только то, что нужно для компиляции.
Иди скомпилируй хоть один проект с парой зависимостей для начала, хэловордщик, потом рапортуй.
Windows SDK
Так он выше пишет что вообще IDE не пользуется, батя же.
Тогда обозначь свои цели. Если хочешь вникнуть в низкий уровень, работу с памятью, в том числе работу Пистона, то берись за Си.
Если не хватает скорости и статической типизации, попробуй глянуть на Go в таком случае. Энтерпрайзные фасолины его люто хейтят, но после питона ты через пару часов туториала сможешь написать что-то полезное.
Инвентарь - iMac, iPhone 6s, пару Android телефонов.
Рассматриваю любое направление развитое на рынке труда.
Иди в мобильную разработку. От веб вёрстки отличается только логикой в интерфейсе. А так - то же формошлёпство.
Чисти. Чисти говно я сказал. ШIND0W2 сам себя не переустановит.
Нужно ли при изучении асс эмблера сильно углублятся в архитектуру процессора?
Дай код. Интересно как ты в сярпе умудрился проблемы с памятью поймать без исключений.
Совсем уж до физики закапываться не надо полупроводники, схемотехника вот это все, достаточно логического уровня.
Главное понимать где какая память (регистры, куча, стэк, сегменты данных/команд) и что делают функции.
рекомендации мимокрокодила, который не понимает нахуя на лекциях по МПС мне втирали про сегментацию памяти в процах Интела 2-го поколения, и как оно работает сейчас.
Ну бля, очеловеченный вариант машинного кода с учётом его архитектуры => так и есть соси ухй.
Главное не советовать когда сам не понимаешь - у каждой архитектуры (x86, arm, mips и тд) свой синтаксис и тд со своими заёбами.
>В: Хочу стать программистом, какой язык учить?
>О: Английский + Java
Можете объяснить почему именно Java?
Вот когда в МИТ начнут с него учить CS, тогда и поглядим
Вопрос мой перечитай.
Ну раз так, тогда ладно.
http://booktracker.org/viewtopic.php?t=3351
До завтра посидируешь? Сейчас за пеку сесть не могу. А там годный материал, наверное, как раз решил попробовать сплойт написать.
Ну спроси у него, я же дал ссылку на форум где он постит.
Упарывает и по сей день потому что шизик-инвалид.
Я что-то не понимаю, причем тут сельские пробивные и матан на специальности "айти"?
После изучения одного ассемблера заебы другой архитектуры изучаются буквально за пару дней. Сложности возникают только с инициализацией и прочей настройкой.
Главное уметь придумывать алгоритм при данных возможностях. Лично я даже два числа поделить не смог, ибо неосилятор.
Рассматриваю любое направление развитое на рынке труда.
>Лично я даже два числа поделить не смог, ибо неосилятор
Можно написать программу, форматирующую твой диск, не умея делить числа на асме и ничего не зная об арифметике с точкой.
Пруф
анон, подскажи, а есть у вас тут Raspberry thread?
Тебе в /fa
>Сразу переписывай и исследуй чужие
Подскажи, что переписывать? Говнокод погромистов с античата? Боюсь встрять на чем-нибудь неподъемном с STL'овским мусором.
Есть дохуя софта на сишечке и на старом добром си с классами, без шаблонов и с минимальной оптимизацией. Возьми игрушку какую-нибудь, например, как >>633682 анон выше. Ознакомься с основами (регистры, адресация, стек и т. п.), и вперед. А вот в защиту соваться, не зная нормально асм, можно только на уровне скрипт-киддиса (видел, наверное, туториалы по анпаку уровня "тыкни сюда, подожди, тыкни сюда, вот здесь у тебя OEP").
>>В: Хочу стать программистом, какой язык учить?
О: Английский + Java
Почему именно Java? Почему не кресты или какой-нибудь php?
Потому что java простой в понимании, куча материалов, всегда в топе. Все остальное козни лбт и госдепа.
Я джуниор же.
Тебе тут никто не обязан отвечать.
> чем-то более серьёзным.
Ты даже сформулировать толком не можешь, чего хочешь. Пошёл нахуй.
Почему на gitbook полно книг на китайском? Не пора ли программистам вместе с английским по дефолту учить китайский?
Ну хуй знает. Винда такого провернуть не даст, ибо 13h в защищенном режиме не дает.
Просто напомню, что пока ты ничего не делаешь, васька задрачивает скиллы и метит на твое место
С чего начинать учить Pascal ?
Ты жопочтец или как? Я ж сказал. На gitbook в топе подавляющее большинство книг на китайском. Я конечно понимаю, что это какие-то мимокрокодилы, но раз такая тенденция есть. То возможно скоро (если не уже) полно годной литературы на китайском.
в торнадо есть готовый класс webSocketHandler
допустим есть код вида
[CODE]
class WebSocketHandler(tornado.websocket.WebSocketHandler):
def open(self):
log.info('Establishe connection')
clients.append(self)
self.write_message('{"dev":"rasp_serv","state":"connected"}')
def on_message(self, message):
log.info('Received from client: ' + str(json.dumps(message)))
# websocket_in_queue.put(message)
\t\t
if str(message) == "reboot2":
reboot2()\t\t\t\t\t\t\t
else:\t\t\t
ser_out_queue.put(message)\t\t
\t\t\t\t
def on_close(self):
log.warning('Lost connection')
clients.remove(self)
def check_origin(self, origin):
return True
[/CODE]
и он не работает
то есть как не работает
мессага пришедшая с морды спокойно уходит ser_out_queue но сравнение message с "reboot2" не дает True почему то
хотя в логе "Received from client: reboot2" появляется
в торнадо есть готовый класс webSocketHandler
допустим есть код вида
[CODE]
class WebSocketHandler(tornado.websocket.WebSocketHandler):
def open(self):
log.info('Establishe connection')
clients.append(self)
self.write_message('{"dev":"rasp_serv","state":"connected"}')
def on_message(self, message):
log.info('Received from client: ' + str(json.dumps(message)))
# websocket_in_queue.put(message)
\t\t
if str(message) == "reboot2":
reboot2()\t\t\t\t\t\t\t
else:\t\t\t
ser_out_queue.put(message)\t\t
\t\t\t\t
def on_close(self):
log.warning('Lost connection')
clients.remove(self)
def check_origin(self, origin):
return True
[/CODE]
и он не работает
то есть как не работает
мессага пришедшая с морды спокойно уходит ser_out_queue но сравнение message с "reboot2" не дает True почему то
хотя в логе "Received from client: reboot2" появляется
> То возможно скоро (если не уже) полно годной литературы на китайском
Это заебись, но пока эта литература является переводом английской, то отсюда следует что также полно годной литературы на английском. Следовательно китайския язык не нужен. Пока не появятся книги язык оригинала которых китайский.
С картин В. Шульженко_
Там не нужны кряки, поехавший. Сама ида (без дополнительных плагинов) и так работает.
Алсо, даже похуй какую версию запускать - 32 или 64, работают обе.
Впрочем, похуй, продолжай ставить себе мокрописечки без смс.жпг.ехе и мнить себя мамкиным кулхацкером.
Бля, ну даже на том же TPB лежали полноценные активированные версии. Защиты там то ли до сих пор нет, то ли она легко снимается.
Эм. Я видимо очень плохо объясняю. Короч. Заходите на gitbook. Смотрите топ книжек. Видите кучу иероглифов. Смотрите книги и понимаете, что это НЕ ПЕРЕВОДЫ, а оригинальные произведения. А с гита не мало годной литературы на англ вышло. Так что возможно процесс уже идет. И не недавно.
Ну вот к хексрею вроде кряк нужен, а иду просто распаковал в удобное место и похуй.
Кстати, с последним/предпоследним обновлением (интерфейс на qt) - она и в wine глючить перестала. И это хорошо, т.к. линуксовое нативное уёбище представляет собой версию от доса, переписанную на ncurses.
Или их переводы на английский. Рано паникуешь.
Декабрьская IDA 6.8 на любом торрент-трекере. Ничего ломать не нужно.
>var_1C= dword ptr -1Ch
Это, видимо, подсказка дизассемблера, а не инструкция? На объявление локальной переменной не похоже. Ниже формируется кадр стека и выделяется место для переменных. Наверно, это массив из 7 элементов, потому что 1C делится на размер dword, и в первый элемент кладется единица. Вызывается какая-то незнакомая функция, а за ней - функция, реализующая непосредственно логику программы.
И что это за функции в левом окне? Они все могут быть нужны, или это для запутывания ньюфагов?
Охуеть, реверсить сложнее, чем писать на асме.
> оригинальные произведения
Ну это уже прогресс. Теперь осталось чтобы эти оригинальные книги были про оригинальные китайские ЯП, оригинальные китайские фрейморки и оригинальные китайские ОС которые захватят больше половины рынка. Тогда прийдется учить китайский, да.
Китайский слишком сложен чтобы его учил весь остальной мир
Но я хочу научиться восстанавливать исходный код, а не просто узнать, какой пароль надо вводить. И просто охуеваю уже оттого, что в точке входа в сишную программу уже что-то непонятное.
Я же тебе говорил - сначала разберись со стеком, а потом уже лезь.
mov [esp+-1Ch+1Ch],1 - это такой GCC-шный вариант для раскладывания аргументов для функции. Делает примерно то же, что и push 1, только место в стеке выделяется заранее.
> Это, видимо, подсказка дизассемблера, а не инструкция?
Это "переменная" компилятора. Если ты пишешь в masm32, у вас там для подобного equ есть.
> И что это за функции в левом окне?
Список всех функциий, которые есть в программе. Нужны чуть реже, чем никогда (проще пользоваться всякими proximity view, а для перехода по имени есть Ctrl+L).
> в точке входа в сишную программу уже что-то непонятное
В точке входа гораздо больше непонятного обычно. Рантайму тоже требуется инициализироваться. Алсо, про __set_app_type ты должен был погуглить, а не спрашивать тут.
>Я же тебе говорил - сначала разберись со стеком, а потом уже лезь
Не мне говорил. Я знаю, как работает стек и как в нем хранится функциональных контекст. Но кроме этого, похоже, надо изучить дохуя оптимизаций компилятора, потому что даже в дизассемблерном листинге моих программ уже встречаются непонятные действия с регистрами, которые только спустя какое-то время складываются в одно действие.
>Алсо, про __set_app_type ты должен был погуглить, а не спрашивать тут
Уже нагуглил.
https://msdn.microsoft.com/ru-ru/library/ff770596.aspx
Цель - в MinGW. Сам недо-сплойт пилю на перле, оно проще.
http://www.ctpax-x.org/?goto=files&show=92
Админ написал, что всё просто:
А чтобы распаковать архивы нужно сделать два шага:
1) Надо запустить:
frxdec.exe filename.frr
Где вместо filename.frr указать нужный файл для дешифровки.
Появится файл "filename.dec" - расшифрованный архив.
2) Затем:
frxunp.exe filename.dec
чтобы распаковать расшифрованный архив.
Но у меня этот frxdec.exe сразу закрывается, на долю секунды возникает чёрное окошко и тут же закрывается
Дебил? Дебил. В папке с прогой зажми Shift и кликни ПКМ. Выбери открыть окно комманд или в этом духе. Вводи, что нужно.
Да, я дебил, что тут поделаешь - зажимаю шифт, кликаю ПКМ и там в меню нет ничего похожего.
Тогда так.
Win+R
cmd
X: (Вместо Х подставь букву диска)
cd xxx (Вместо xxx - название папки, повторяй, пока не доберешься до нужной)
Профит.
Я слепой мудак. Не на строке файла, а на свободном месте в папке, как-то так.
Ты реально понимаешь и смог бы это реализовать или просто теоретизируешь? В целом я нуб, поэтому подобные намеки мне ничего не дают, увы.
И да, приложение на с++, максимум на с#!
Если че, никакого хэйта, просто говорю как есть
Спасибо!
Спустя 15 лет наконец нашёл то, что искал. Это был самый длинный поиск в моей жизни.
Бля, я вижу так. Цепляешься к серверу. Запрашиваешь код нужной страницы. Парсишь.
Да, я тоже так себе это представляю, но как именно это сделать понятия не имею.
Ок, может кто еще что предложит.
Можешь предложить что-то лучше?
Суть программы - вводится пароль, который надо определить. Если пароль неправильный, выводится сообщение и новое предложение ввести пароль.
По джампу попадаем в loc_77AABF0A. Здесь обходим вызов ntdll_RtlInitializeExceptionChain и по F7 попадаем в процедуру sub_77AABF2B. Здесь видим ветвление и выражение test eax, eax, которое управляет переходом. Флаг нуля опущен, и мы идем налево. Там всплывает Software breakpoint, нажимаю Ок и попадаю в строчку на третьем скрине. После выполнения предлагается передать исключение приложению. Что бы я ни выбрал, всплывает окошко Running с кнопкой Suspend, после нажатия на которую попадаю снова в начало программы.
Что я делаю не так? Похоже, я тут нихуя не понимаю. С какой книги Криса по дизассемблированию стоит начать?
Не выебывайся и юзай ollydbg. Позже, когда наберешься опыта, пересядешь на IDA
Адреса 0x7xxxxxxx - это системные библиотеки. Тебе там нечего делать, если CrackMe простой.
Так и будет:
void (∗funcptr)(int,int,int) = some_function;
...
if (funcptr) funcptr(0, 2, 0);
Кто тебе мешает нажать F5 в IDA и посмотреть выхлоп декомпилятора?
Тупо перестащи файл на exeшник винда сама его параметром передаст
Если 41414141 - это кусок твоего буфера из букв 'a'. Почему ты думаешь, что это SEH?
Да хоть исходники, спизженные из сети.
https://forum.reverse4you.org/showthread.php?t=1410
Вот отсюда. Только у меня Server 2008R2 SP1.
>When you lose fun and start doing things only for the payback, you're dead. (c) TCLH (Phrack 65, Intro)
Хорошо сказано.
Исходники не надо, надо дизасм смотреть. Вот все эти магические числа в .pl (сколько двордов надо передать, чтобы буфер переполнился), они могут меняться в зависимости от компилятора и флагов компиляции. А вот от ОС этот конкретный способ эксплуатации мало зависит. Возьми свой буфер, который 'AAAAA' и начинай заменять по 4 символа заменять хвост на 'BBBB'. Когда оно стабильно начнет переходить на 42424242 вместо 41414141, втыкай вместо 'BBBB' требуемый адрес.
Никогда не занимался этим, но сейчас назрела мысль и нужно выбрать cms под нужный функционал.
Оно понятно, но в ОС могут работать всякие DEP и ALSR. А вообще я хотел заюзать генератор паттернов из метасплойта, да вот в виртуалку копипастится - а обратно нет.
Есть еще предложения? И еще: можно ли подготовиться к ЕГЭ по математике, русскому, физике и информатике за 4 месяца? Я осилю? Может, будет хорошо заниматься с репетиторами и прочее? Может посоветуете годных сайтов?
>чтобы иметь диплом высшего технического образования образования
Купить его
>в какой ВУЗ посоветуете поступать
Это для быдла
Не аргумент.
Подготовка к ЕГЭ - полнейшая хуйня, если ты не даун сдашь вообще без особых проблем.
Сам учусь на 2 курсе сейчас и не готовился к ЕГЭ, в итоге получилось 232 балла за 3 предмета - Русский, математика, информатика.
Проебался только с информатикой - 70 баллов. Но, учитывая то, что препода по информатике, в тех ебенях где я жил, вообще не было, да и сдавал я один из всей школы этот предмет, я думаю, что не так уж плохо...
>Подготовка к ЕГЭ - полнейшая хуйня, если ты не даун сдашь вообще без особых проблем.
Ну зачем ты дезинформируешь? Тебе могло просто повезти с вариантом, или в твой год экзамен был простой. Вообще ЕГЭ нифига не простой, без подготовки трудно сдать хорошо, хотя бы потому что задаия части С требуют определённоо формата ответа.
Если решил связаться с IT, то советую поступить в около-средненький ВУЗ, по профильным предметам учись с интересом, на остальные забивай и много дрочи IT в свободное время. Базарю, еще захочешь.
Вот ещё, в этом говнокоде разбираться.
омг. Там все задания всех вариантов однотипны.
Самый простой вариант - скомпилить и найти байтики. Можешь вот такую штуку заюзать https://wmsmartt.wordpress.com/2011/11/08/win32-exploitation-with-mona-py-getting-set-up-part-i/ Или сам напиши.
Сажа приклеилась
Я хотел узнать, почему порекомендовали именно его. Для новичка проще освоить и на его базе легче постичь и другие языки? Я-то только паскаль учил много лет назад, лел.
Так что я с нуля практически начинаю.
Потому что
чтобы потом как-нибудь да пригодилось.
Очевидная Scala, на ней хоть что-то пишут, кроме фибоначей с факториалами. Правда ее лучше изучать с Хачкелль бекграундом, вот такая хуйня.
Рассматриваю любое направление развитое на рынке труда.
Ребят, умственно-отсталый может все эти темы изучить, чтобы начать зарабатывать на жизнь кодерством? Сейчас работаю на заводе грузчиком, но чувствую долго не протяну. Нужно искать доп. заработок. В школе все плохо изучалось. Вуз тоже дропнул. Проблема с пониманием всех ключевых вещей и последующим воспроизведением прочитанного. Алгебра/ Геометрия мимо. Могу только умножить и посчитать. Графики, аксиомы и прочие теоремы для меня темный лес. Трудно мне будет в программировании
ато тогл одно. эта хуйня http://www.responsivedesigntest.net/ другое! мне что блять, десятью тулзами чекать или всё же есть один несравненный, точный, покладистый?
с меня как всегда нихуя
>Нужно искать доп. заработок. В школе все плохо изучалось
А нехуй было нюхать клей, бухать и ебаться.
Ебля то чем не угодила?
Думаю, что вряд ли. Но ты попробуй, хуй знает.
Ну, я правда не буду прокрастинировать.
и еще посоветуйте годный и бесплатный тестер на кроссбраузерность
Документация бутстрапа
Это копия, сохраненная 17 февраля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.