• Как инициализировтаь часть пременной?

    rozhnev
    @rozhnev Куратор тега PHP
    Fullstack programmer, DBA, медленно, дорого
    Было бы намного проще, если бы вы предоставили пример данных и желаемый результат. Возможно этот код поможет вам:
    <?php
    function split4bites ($input) {
    	$result = [];
    	$start = 0;
    	
    	while ($start < strlen($input)) {
    		array_push($result, substr($input, $start, 4));
    		$start = $start + 4;
    	}
    	
    	return $result;
    }
    
    $result = split4bites('jtoir75nsdt56odj');
    
    print_r($result);


    Здесь можно проверить PHP скрипт
    Ответ написан
    Комментировать
  • Что из себя представляет сегмент код программы в процессе?

    @Karpion
    Для начала Вам надо освоить понятие "адресное пространство" - чем оно отличается от "памяти". Узнать, чем "адресное пространство компьютера" отличается от "адресное пространство процесса" (в частности - у каждого процесса есть собственное адресное пространство).

    Дальше хорошо бы узнать сегментную систему адресации процессоров *86 - значительная часть терминологии идёт оттуда, хотя реально после появления 32-битной адресации на процессоре i386 сегменты практически не задействуются.

    Ну и надо иметь понятие о программировании на ассемблере.

    В первом приближении запуск процесса выглядит так:
    • Ядро создаёт структуры данных для процесса. В т.ч. - распределение адресного пространства.
    • Ядро смотрит в файл программы и выделяет место под программный код программы (тут я рассуждаю в контексте "процесс есть исполняющаяся программа"). Это место (и/или помещённый туда код) входит в "сегмент кода". Если одну программу запустили несколько раз - её сегмент кода попадает в несколько процессов.
    • Ядро смотрит список разделяемых библиотек, прописанный в файле программы. Если эти библиотеки не загружены ранее запущенными процессами - под эти библиотеки тоже выделяется адресное пространство; и это адресное пространство тоже входит в сегмент кода. Но надо понимать, что адресное пространство каждой библиотеки попадает во все процессы, которые используют эту библиотеку. В идеале - библиотека во всех процессах должна находиться на одном и том же адресе адресного пространства; но иногда это не так.
    • По ходу дела в процессе работы программа может подгружать новые библиотеки. Их адресное пространство тоже попадёт в сегмент кода.
    • Как правило, код программы и код каждой библиотеки - непрерывный. Но между ними - бывают разрывы.
    • Для работы нужно выделить адресное пространство под стек. В идеале - одно д.б. непрерывным. Но иногда - приходится извращаться и делать его разрывным. Это = сегмент стека. Активно используется при вызове подпрограмм/процедур/функций - через стек передают аргументы, на стеке располагают локальные данные подпрограмм/etc. Особенно активно стек используется при рекурсии; тогда как в древних языках с запретом рекурсии нередко обходились статическим размещением аргументов и локальных переменных.
    • Для данных, размещаемых в областях, резервируеммых функцией malloc() - используется куча. Ей разрешается быть не непрерывной, т.е. состоять из разорванных кусков.


    Фраза "поток берет информацию на выполнение" говорит о том, что Вы читали плохие книги (извините за прямоту).
    Инструкции программного кода - берёт процессор (или ядро - если процессор многоядерный), т.е. железка. Ядро операционки лишь подготавливает инструкции программного кода для того, чтобы процессор мог их брать. Ядро делает это один раз при старте процесса; ну и вносит поправки при свопинге/пейджинге. А процессор исполняет каждую инструкцию кода; ну, чтобы Вы лучше поняли: каждое сложение или иная арифметическая операция, каждая пересылка данных - является инструкцией.
    Кстати, всё, что делает ядро операционки - записано аналогичными инструкциями кода. Но ядру дополнительно позволены особые инструкции.

    Мне кажется, Вам рано разбирать понятие "поток". Сначала надо понять, как работает система, в которой не реализованы потоки - т.е. любой процесс является однопоточным. И потом уже - разбираться с потоками.
    Ответ написан
    Комментировать
  • Что из себя представляет сегмент код программы в процессе?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Кстати это не на всех архитектурах. Просто наиболее устоялось
    Ответ написан
    Комментировать
  • Как сложить два числа в Lua в Coregames?

    dollar
    @dollar Куратор тега Lua
    Делай добро и бросай его в воду.
    Не знаком лично с программой coregames (хотя спасибо, что уточнили).

    Однако навскидку могу предположить, что функция UI.PrintToScreen принимает только одну строку и не принимает никакие числа. Поэтому нужно число привести к строке:
    print=UI.PrintToScreen
    b=1;
    c=1;
    a =  b + c ;
    print (tostring(a))

    Того же эффекта можно достичь операцией конкатенации строк из-за автоматического приведения типов в Lua при использовании этой операции:
    print("The result = " .. a)

    Ну а если серьёзно подходить к вопросу, то вот в этом месте:
    сбой и все...

    Вы упускаете важную информацию. Характер сбоя многое говорит о проблеме. Печально, если приложение просто схлопывается или зависает. Но зачастую при ошибке оно выводит подробности ошибки. Например, это может быть что-то типа сообщения: "line 5 - количество и/или типы аргументов у функции неправильные". После этой инфы очень легко догадаться, в чём дело. Даже если вы сами не поняли смысл сообщения, в вопросе следовало бы указать все подробности сбоя, как он происходит и что выводит. Это вам совет на будущее.
    Ответ написан
    1 комментарий
  • Хочу открыть магазин по продаже игр. Доход будет менее 5 тысяч. Нужно ли официально регистрировать?

    @Legal2019
    Всё в имени моём... и радость и печаль...
    Начните с познания ответственности:
    В РФ:
    Статья 14.1. Осуществление предпринимательской деятельности без государственной регистрации или без специального разрешения (лицензии)
    Перспективы и риски арбитражных споров. Ситуации, связанные со ст. 14.1. КоАП РФ
    Развернуть

    1. Осуществление предпринимательской деятельности без государственной регистрации в качестве индивидуального предпринимателя или без государственной регистрации в качестве юридического лица, за исключением случаев, предусмотренных частью 2 статьи 14.17.1 настоящего Кодекса, -
    (в ред. Федерального закона от 29.07.2017 N 265-ФЗ)
    (см. текст в предыдущей редакции)
    влечет наложение административного штрафа в размере от пятисот до двух тысяч рублей.
    (в ред. Федерального закона от 22.06.2007 N 116-ФЗ)
    (см. текст в предыдущей редакции)
    2. Осуществление предпринимательской деятельности без специального разрешения (лицензии), если такое разрешение (такая лицензия) обязательно (обязательна), -
    влечет наложение административного штрафа на граждан в размере от двух тысяч до двух тысяч пятисот рублей с конфискацией изготовленной продукции, орудий производства и сырья или без таковой; на должностных лиц - от четырех тысяч до пяти тысяч рублей с конфискацией изготовленной продукции, орудий производства и сырья или без таковой; на юридических лиц - от сорока тысяч до пятидесяти тысяч рублей с конфискацией изготовленной продукции, орудий производства и сырья или без таковой.
    (в ред. Федерального закона от 22.06.2007 N 116-ФЗ)
    (см. текст в предыдущей редакции)
    3. Осуществление предпринимательской деятельности с нарушением требований и условий, предусмотренных специальным разрешением (лицензией), -
    (в ред. Федерального закона от 29.12.2015 N 408-ФЗ)
    (см. текст в предыдущей редакции)
    влечет предупреждение или наложение административного штрафа на граждан в размере от одной тысячи пятисот до двух тысяч рублей; на должностных лиц - от трех тысяч до четырех тысяч рублей; на юридических лиц - от тридцати тысяч до сорока тысяч рублей.
    (в ред. Федеральных законов от 22.06.2007 N 116-ФЗ, от 27.07.2010 N 239-ФЗ)
    (см. текст в предыдущей редакции)
    4. Осуществление предпринимательской деятельности с грубым нарушением требований и условий, предусмотренных специальным разрешением (лицензией), -
    влечет наложение административного штрафа на лиц, осуществляющих предпринимательскую деятельность без образования юридического лица, в размере от четырех тысяч до восьми тысяч рублей или административное приостановление деятельности на срок до девяноста суток; на должностных лиц - от пяти тысяч до десяти тысяч рублей; на юридических лиц - от ста тысяч до двухсот тысяч рублей или административное приостановление деятельности на срок до девяноста суток.
    (часть 4 в ред. Федерального закона от 29.12.2015 N 408-ФЗ)
    (см. текст в предыдущей редакции)
    Примечание. Утратило силу. - Федеральный закон от 08.06.2015 N 140-ФЗ.
    (см. текст в предыдущей редакции)
    Примечания:
    1. Понятие грубого нарушения устанавливается Правительством Российской Федерации в отношении конкретного лицензируемого вида деятельности.
    2. Лицо освобождается от административной ответственности при выявлении факта совершения им действий (бездействия), содержащих признаки состава административного правонарушения, предусмотренного настоящей статьей или статьями 15.1, 15.3 - 15.6, 15.11, 15.25 настоящего Кодекса, при условии, если это лицо является декларантом или лицом, информация о котором содержится в специальной декларации, поданной в соответствии с Федеральным законом от 8 июня 2015 года N 140-ФЗ "О добровольном декларировании физическими лицами активов и счетов (вкладов) в банках и о внесении изменений в отдельные законодательные акты Российской Федерации", и если такие действия (бездействие) связаны с приобретением (формированием источников приобретения), использованием либо распоряжением имуществом и (или) контролируемыми иностранными компаниями и (или) с совершением валютных операций и (или) зачислением денежных средств на счета (вклады), информация о которых содержится в специальной декларации.
    (в ред. Федерального закона от 18.07.2019 N 178-ФЗ)
    (см. текст в предыдущей редакции)
    3. Примечание 2 применяется также в отношении лица, являющегося декларантом или лицом, информация о котором содержится в специальной декларации, поданной в ходе третьего этапа декларирования в соответствии с Федеральным законом от 8 июня 2015 года N 140-ФЗ "О добровольном декларировании физическими лицами активов и счетов (вкладов) в банках и о внесении изменений в отдельные законодательные акты Российской Федерации".
    (п. 3 введен Федеральным законом от 18.07.2019 N 178-ФЗ)
    (примечания введены Федеральным законом от 08.06.2015 N 140-ФЗ)
    Ответ написан
    5 комментариев
  • Как происходит выбор реализации интерфейса?

    @Griglapidus
    C++/Qt
    К интерфейсу не надо относиться как к типу данных. Вы не вызываете метод интерфейса, вы вызываете метод класса наследованного от интерфейса. Вы же не создаете объект тип ICar. Вы создаете объект типа Sportcar и через интерфейсные методы ICar вы обращаетесь к объекту типа Sportcar.
    Ответ написан
    4 комментария
  • Почему оператор сотовой связи предоставил ip адрес не по местоположению?

    gbg
    @gbg Куратор тега Компьютерные сети
    Любые ответы на любые вопросы
    Базы данных GEOIP являются спекулятивными и неточными.

    Нет никакого регламента, который привязывает IP к географии.

    Более того, абоненты сотовой связи получают серые адреса из внутренней сети оператора, а уж где физически сеть оператора гейтуется в Интернет - знает только оператор.

    Так что может быть и так, что вам все правильно показывает - и машина-гейт с таким IP физически находится в Хабаровске
    Ответ написан
    Комментировать
  • Парсинг для начинающих, что изучать?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Смотрите на шарпах есть htmlagility пробуйте его. Ну и ищите c# scrapping
    Ответ написан
    6 комментариев
  • Парсинг для начинающих, что изучать?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    Абсолютно не важно на чём писать. Основная ошибка всех новичков.
    Важно понимать как работает протокол HTTP/HTTPS, что такое хедеры, куки, понимать аутентификацию, сессии, методы (get, put, update,...), статусы ответов,... Понимать что такое прокси, VPN... и для чего они нужны, как их использовать. Нужно понимать, как работает сервер, как он может защищаться от парсинга.
    Изучи модель OSI, из каких слоёв/уровней она состоит
    Ответ написан
    Комментировать
  • Файл HackTool:Win32/Keygen!MSR это вирус или нет?

    GavriKos
    @GavriKos
    Это кейген. Что в целом не очень то хорошо. Но в кейгене может легко быть вирусня, да.
    Не юзайте пиратку и все
    Ответ написан
    Комментировать
  • Стоит ли заниматься дизайном. Несколько вопросов?

    melpnz
    @melpnz
    UX/UI дизайнер
    Если хотите делать упор на 3Д, то лучше как перспективу рассматривать гейм-индустрию. Как правило и ЗП там хорошая и специалисты с руками из нужного места на расхват. В каком софте именно моделят не подскажу, если интересно думаю можете сами это выяснить.
    Что касательно именно моушена, точно не скажу, но мне кажется тут чаще в крупных компаниях эту функцию выполняют дизайнеры-универсалы (нарисовал интерфейс, запилил лендинг, смонтировал на него видео).
    Ответ написан
    Комментировать
  • Как удалить вредоносное ПО с Linux?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Универсальный ответ - переустанови систему. Если ты поимел глупость под суперъюзером запустить левый код, значит невозможно наверняка убедиться, что полностью выпилил все вредоносные артефакты.
    Проще и быстрее полностью переустановить систему.
    Домашний каталог можно забэкапить полностью (если нет привыки с него что-то запускать под рутом), иначе нужно взять только документы и настройки.
    Можно склонировать всю файловую систему в примонтированный файл, чтобы потом достать то, что забыл забэкапить.
    Ответ написан
    1 комментарий
  • Какой выбрать парсер для начинающего?

    like-a-boss
    @like-a-boss
    Признайся,тебяТянетНаКодМужика,ты—программный гей
    Навыки написания парсера ничем не отличны от навыков программирования. Вы умеете программировать? Давайте начнём с этого. Если нет, то вам стоит поискать какой-то софтвэа, наподобие ZennoPoster. Для того, чтобы его освоить достаточно представлять себе, что такое блок-схема и дружить с логикой.
    Ответ написан
    2 комментария
  • Что будет ждать меня на олимпиаде?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Живете вы в Украине, или нет - роли не играет. Вы не там задаете свой вопрос.
    Самое точное, что можно сказать: вас будут ожидать задачи, связанные с python.
    Точнее можно узнать только у организатора олимпиады.
    Ответ написан
    Комментировать
  • Что будет ждать меня на олимпиаде?

    hottabxp
    @hottabxp
    Сначала мы жили бедно, а потом нас обокрали..
    Что будет ждать меня на олимпиаде?
    - судя по вашим предыдущим вопросам, полный провал(если у вас олимпиада не через несколько лет).
    Опыт проведения городской школьной олимпиады по пр... - Посмотрите там, там задачки есть и ответы.
    Ответ написан
    1 комментарий
  • Имя "list" не существует в текущем контексте c#, VS, в чём проблема?

    freeExec
    @freeExec
    Участник OpenStreetMap
    У вас нет метода, в котором вы могли бы использовать этот list. А сейчас вы объявляете переменные класса mainClass.
    Ответ написан
    Комментировать
  • Имя "list" не существует в текущем контексте c#, VS, в чём проблема?

    HemulGM
    @HemulGM
    Delphi Developer, сис. админ
    Ты пишешь описание класса, а не алгоритм кода
    Ответ написан
    Комментировать
  • Углубляться, что бы сменить род деятельности?

    JRazor
    @JRazor
    Senior StarkOverFlow Programmer
    А не поздно ли уже для меня углубляться в изучение данной области?

    А что-то поменялось за последние годы?
    Какую область развития выбрать и почему?

    Которая интересна
    Что выбрать предпочтительней и актуальней для будущего (помечтаю) трудоустройства: .Net или Python?

    Тут всё, как и везде: чем ниже порог вхождения - тем больше конкурентов. И, опять же, зависит от направления, в котором планируешь двигаться.
    По поводу "актуально" - это лучше смотреть по количеству вакансий на том же hh.ru, к примеру. Или на бирже, на которой планируешь работать.
    Или пойти по стопам некоторых — сначала в QA, а потом в developers?

    Если тебя берут на работу - ты идешь работать. Не надо синдромов самозванца, неуверенности и прочего. Ты просто идешь получать опыт. Если работодателя и тебя всё устроило, то "я еще слаб" - это вообще непонятно к чему.
    И ,может кто-то, поделиться опытом, у кого получилось сменить род деятельности и сколько заняло сил и времени?

    А это вообще к чему? Нужна мотивация? Таких статей хватает. К тому же статьи людей, которых на работу не взяли - не пишутся, так что выборка из дерьма, мягко говоря. Основная мотивация - это комфортное будущее для тебя, а не Васи из соседнего подъезда.

    Итог: ищи комфортную для себя сферу, в которой ты будешь счастлив работать и развивайся в ту сторону. Если ты станешь в ней профессионалом, то и Васю из соседнего подъезда можно подвинуть.

    И да:
    Куда лезешь, тут и без тебя хватает

    Влезай и чувствуй себя тут как дома. А думать, что ты для кого-то очень важный конкурент - очень самоуверенно. Особенно на форуме, с кучей специалистов, до которых еще нужно, как минимум, дорасти.
    Ответ написан
    Комментировать
  • Почему в оценке сложности алгоритма log n пишется без основания?

    zabudkin
    @zabudkin
    Инженер-системотехник, программист, админ, ТПУ!!!!
    Cложность алгоритмов это log N, как Вы пишете без указания основания. Но принято считать, что в таком случае имеется в виду логарифм по основанию 2. В некоторых кругах, но не у нас конечно же, для такого логарифма есть обозначение - lb.

    Логарифм 64 по основанию 2 равен 6 (для всех поясню: 2 в 6 степени=64, "логарифм это по сути анти-возведение-в-степень", как мог проще объяснить, так и объяснил)
    Ответ написан
    1 комментарий
  • Почему в оценке сложности алгоритма log n пишется без основания?

    @Dalp
    O(n)-это очень примерная оценка сложности алгоритма. В частности она отбрасывает все константы. Из курса алгебры:
    logan = (logbn)/(logba), logba-константа и её отбрасывают.
    Как видно из этого выражения, основание логарифма в оценке O(n) не имеет смысла.
    Однако чаще всего основание-2.
    Ответ написан
    Комментировать