• Будет ли скомпилированный код C++ работать на всех архитектурах процессора?

    @res2001
    Developer, ex-admin
    Даже бинарник для х64 не будет работать под х32, что уж говорить о принципиально разных архитектурах.
    В исполняемом файле содержатся машинные команды для конкретной архитектуры процессора.
    Для другой архитектуры нужен другой исполняемый файл.
    То же самое актуально и для разных ОС (бинарники для линукс и винды не совместимы). Но, обычно, есть варианты запустить бинарник от другой ОС - виртуализация, wine в линукс, WSL в винде.

    Более того, например, если у вас приложение х64 и вы используете какую-то специфическую фичу процессора, которая есть только в определенных моделях процессора, то приложение будет корректно работать только на процессорах поддерживающих эту фичу. Если нужно, в приложении можно предусмотреть проверку процессора и если фича не поддерживается использовать какую-то универсальную реализацию.
    Ответ написан
    Комментировать
  • Как структурировать код?

    @res2001
    Developer, ex-admin
    Одинаковые участки кода надо выделить в отдельные функции, передавать в функции нужные аргументы и возвращать результаты. Частично это у вас уже сделано с f21, но результат можно улучшить.
    Ответ написан
    Комментировать
  • Как или где онлайн можно научиться кодить игры правильно (мультитрединг, структуирование итд)?

    @res2001
    Developer, ex-admin
    Читать книги и статьи про параллельное программирование, архитектуру ПО, паттерны проектирования. Разбираться с непонятными вопросами, применять прочитанное в своих проектах.
    Никто не сделает из тебя хорошего разработчика, кроме тебя самого.

    По видео курсам:
    По параллельному программированию есть хорошие лекции на https://compscicenter.ru/ лекции ведет Евгений Калишенко.
    Хорошие лекции на эту и другие темы связанные с программированием выкладывает канал "Лекторий ФПМИ" на ютубе.
    В перечисленных вопросах не стоит акцентировать внимание на разработке игр, т.к. все это применяется повсеместно в проектах любой направленности.

    К перечисленным темам могу добавить еще несколько, на которые стоит потратить свое время: сетевое программирование, асинхронное программирование, использование СУБД.
    Ответ написан
    4 комментария
  • Работа конвейера в windows с python?

    @res2001
    Developer, ex-admin
    Вместо входного файла нужно использовать stdin и читать данные из него.
    Ответ написан
    Комментировать
  • Безопасен ли домашний проброс портов?

    @res2001
    Developer, ex-admin
    Безопасен ровно в той мере, в какой безопасно программное обеспечение, слушающее проброшенный порт.
    Самому роутеру через проброс ничего не угрожает, но если сломают слушающее ПО и получат управление компом, то дальше можно делать все что угодно в вашей сети.
    Все интернет сервисы слушают порты и вроде у многих все нормально, но не у всех :)
    Ответ написан
    Комментировать
  • Как запустить сеанса другого пользователя из под своего?

    @res2001
    Developer, ex-admin
    Запустите любое приложение из-под этого пользователя.
    Ответ написан
    Комментировать
  • С чего начать изучение С++?

    @res2001
    Developer, ex-admin
    Подойдет любой толстый учебник по плюсам. Но смотрите, чтоб в книге был описан хотя бы С++11.
    Не все книги из того списка переиздавались после 2011 года, а значит в них не учтены изменения современных стандартов.
    Знаю, что Лафоре из списка переиздавался в 2018, но стоит посмотреть какие изменения были в этом издании.

    В принципе база осталась той же, что и до С++11, но в этом стандарте добавились серьезные улучшения, желательно изучать уже с этими нововведениями. Уже есть и С++14/17/20. 14 - это исправление ошибок 11, ничего кардинально нового там нет. В 17 и 20 добавились некоторые фичи, о них можно почитать в интернете, учебников, учитывающих эти стандарты, по моему еще нет.
    Ответ написан
    Комментировать
  • Стоит ли проходить курс по С++ на яндекс практикуме?

    @res2001
    Developer, ex-admin
    Купите книжку и почитайте. Лафоре вполне годный учебник для начинающих. О том как устроен внутри С++ и все новые фишки он не расскажет, но начать программировать с него можно.
    Про сложные вещи в С++ вообще довольно мало книг, особенно на русском. В основном информация берется из статей в интернете. Но до понимания "сложных вещей" еще надо самому дойти, изучая базу и практикуясь.
    В интернете полно открытых проектов, можете присоединиться к любому, который вам понравится. Так вы и практику в программировании получите и поработаете над более крупным проектом.
    Ответ написан
    Комментировать
  • Почему при умножении матриц, вводя разные значения при каждом новом запуске программы я получаю одни и те же размеры(не правильные)?

    @res2001
    Developer, ex-admin
    Хотелось бы больше конкретики, т.к. чтение у вас в двух функциях CreatMatr() и ReadMatrix().
    В CreatMatr() вы не освобождаете динамически выделенную память - это утечка. Используйте вместо "сырого" массива вектор.
    Так же не понятно, зачем вы вызываете CreatMatr() 3 раза?

    Предположу, что проблема в том, что в CreatMatr() вы не возвращаете вызывающему коду считанные значения n, m, l, поэтому в main эти значения никак не изменяются и равны 1.
    Ответ написан
    5 комментариев
  • Как выполнить git clone если в адресе есть пробел?

    @res2001
    Developer, ex-admin
    Удвойте знак процента - процент служебный символ, его надо экранировать
    Ответ написан
    Комментировать
  • Обязательно ли кабель должен быть проведён к роутеру через модем или использование модема необязательно?

    @res2001
    Developer, ex-admin
    Все зависит от того какой кабель. В роутере обычно разъемы Ethernet (8 или 4 жильный кабель с разъемом RJ45) и в них можно сунуть только Ethernet (ни оптику, ни телефонную линию, и т.д.).
    Если в квартиру заходит что-то отличное от Ethernet, то требуется устройство, которое будет преобразовывать один тип сигнала в другой (например оптику в Ethernet, или DSL в ethernet), отсюда появляются дополнительные устройства на входе в роутер. Эти дополнительные устройства не всегда называются модемами, для оптики, например, устройство имеет более общее название медиа конвертер (преобразователь интерфейсов). Модем это то же медиа конвертер.
    Бывают модели роутеров, которые имеют внешний порт не Ethernet (оптика, DSL). Такие роутеры, как правило, используются именно там где входящая линия именно этого типа. Тогда, конечно, дополнительное устройство не требуется.
    Так же часто на входе уже имеется Ethernet, тогда такой кабель можно напрямую втыкать в роутер, без посредников.
    Ответ написан
    Комментировать
  • Скорось wifi не соответствует тарифу?

    @res2001
    Developer, ex-admin
    Вай-фай он разный. Есть несколько стандартов, отличающихся скоростью.
    Когда устройство подключается к вай-фай оно определяет по какому из стандартов будет работать. Определяется это в т.ч. в зависимости от внешних факторов, например от уровня сигнала, от количества помех и т.п.
    Если у вас много вай-фай точек в округе, то все они засирают одно и то же эфирное пространство и мешают друг другу, что снижает скорость передачи данных. Так что далеко не факт, что в ваших условиях ваше оборудование сможет выдать максимально возможные для него скорости.
    Обычно для обхода этой проблемы применяют двухдиапазонные роутеры (ну и клиентские устройства само собой), которые могут работать еще и на частоте 5 Ггц. Такие устройства стоят дороже, а потому встречаются реже и соответственно меньше помех создают друг другу на частоте 5 ГГц. Но, опять же, далеко не факт, что в ваших условиях это как-то вам поможет.
    Ответ написан
    Комментировать
  • Как включить WOL через VPN?

    @res2001
    Developer, ex-admin
    Широковещательные пакеты (а пакет WOL широковещательный) не маршрутизируются между сетями.
    Для обхода этого ограничения можно поднять NAT на ВПН интерфейсе ВПН сервера и сделать проброс UDP пакетов на WOL порту на широковещательный адрес подсети.
    В программе отправки WOL пакета соответственно надо указывать ВПН адрес ВПН сервера.
    По такой схеме работает "WOL over Internet". Именно для такого варианта предназначена опция "Internet" в вашей программе, но она требует поддержки со стороны NATа.

    Гораздо проще реализовать какой-то вариант удаленного запуска программы, отправляющей WOL с компа в сети. Для этого надо найти утилиту командной строки, которая умеет в WOL ну и вызвать ее удаленно с соответствующими параметрами.
    Ответ написан
    Комментировать
  • Обход NAT вполне реален в нынешних реалях?

    @res2001
    Developer, ex-admin
    Согласен с предыдущими отвечающими.
    Но, можно посмотреть в сторону IPv6. С его адресной базой NAT в принципе не нужен, можно раздавать белые адреса каждому "утюгу". Вот только не уверен, что провайдеры именно так поступают.

    Фаервол в любом случае может заблокировать трафик, хоть с NAT, хоть без NAT, хоть IPv6 - роли не играет.
    Обычно, что бы обходить фаервол просто используют "стандартные" порты на сервере, которые, как правило (но не обязательно), везде открыты, например TCP/80 (http) или TCP/443(HTTPS). Это не дает 100% гарантии прохождения фаервола, но шансы повышает.

    И кстати, если мы говорим об IPv4, то для того, что бы обойти NAT нужно использовать UDP, а не TCP. На TCP NAT не обойти.
    На счет STUN и т.п. Там смысл в том, что сам STUN сервер с белым IP нужен только для получения клиентами адреса и порта "сервера", дальнейшая передача трафика идет напрямую между клиентом и сервером. NAT в этом случае не обходится, а просто клиентами используется та же дырка в NAT, которая образовалась при подключении сервера к STUN.
    Ответ написан
  • Какой bat файл нужен для проверки состояния USB при включении?

    @res2001
    Developer, ex-admin
    Помнится где-то у микрософта была утилита командной строки devcon. Она позволяла много чего делать с устройствами. Посмотрите, может и вам поможет.
    Она умеет включать/отключать устройства, показывать состояние и т.п.
    https://docs.microsoft.com/en-us/windows-hardware/...
    Ответ написан
    Комментировать
  • Существют ли IDE с одновременной командной разработкой?

    @res2001
    Developer, ex-admin
    Думаю что нет.
    Сомневаюсь, что это нужно с практической точки зрения, т.к. если несколько программистов будут править один и тот же файл и взимозависимые участки кода, то они будут друг другу мешать, так что в итоге править будет только один, а остальные ждать своей очереди.
    Если же участки не зависимые - то с этим легко справляются системы контроля версий и "онлайн" тут нафиг не нужен.
    Ответ написан
    2 комментария
  • Как из папки раскидать все файлы по подпапкам по 10 шт?

    @res2001
    Developer, ex-admin
    но как указать чтоб скрипт работал с конкретной папкой

    Вам bat и cmd файлы то же надо раскидывать по каталогам?
    ...
    set "dirname=./test"
    ...
    For %%A In ("%dirname%/*.bat" "%dirname%/*.cmd" "%dirname%/*.mp4") Do (
    ...
        move /y "%dirname%/%%~A" "%DirN%"
    ...

    Зачем вам robocopy? С переносом файлов вполне справится move.
    Ответ написан
    Комментировать
  • Как исправить ошибку с запуском MicroSoft Store и меню Пуск?

    @res2001
    Developer, ex-admin
    Время от времени сталкиваюсь с похожей ошибкой. Лечится вполне успешно.
    В гугле полно инструкций для "windows 10 repair microsoft store".
    Например вот вполне подходящая howtoшка: https://www.intowindows.com/how-to-reinstall-store...
    Не скажу, какой именно из рецептов мне помог последний раз, но похоже, что-то из этого списка. Есть смысл переходить сразу к вариантам с использованием powershell.
    Ответ написан
  • Информация с сайта?

    @res2001
    Developer, ex-admin
    NAT не обязательно стоит у провайдера, он может быть у тебя дома на роутере и т.п. И оператор динамически вполне может раздавать белые адреса на твой роутер, а роутер уже будет раздавать серые адреса внутрь домашней сети.

    В локальных сетях обычно используются серые адреса, а значит где-то должен быть NAT и выпускать в интернет уже с белым адресом. Этот белый адрес NATа и видит сайт.

    Но бывает и так, что в локальной сети используются белые адреса. Видел пару таких случаев, когда контора в 90ых арендовала подсеть у провайдера и использует ее на компах в локальной сети по сей день. В этом случае NATа может и не быть, тогда пользователь ходит в интернет с тем адресом, который установлен у него на компе.
    То же самое может быть, если вы, например, купите у прова белый статический адрес и подключите кабель оператора в свой комп.

    Узнать другие адреса "по умолчанию" сервер не может, т.к. браузер не предоставляет такой возможности. Но с помощью плагинов и т.п., думаю, можно что-то придумать, но тут уже без помощи пользователя не обойтись (ведь плагин надо сначала установить).
    Можно узнать, например, версию браузера, какая ОС используется и много чего еще. В интернете полно ресурсов, которые показывают, что получилось достать из вашего браузера.

    Кстати, если используется IPv6, то высока вероятность, что прямо на компе используется белый адрес. Тут адресного пространства хватает, чтоб выдать белый адрес каждой блохе. Так что NAT не нужен.
    Ответ написан
  • Что делать если openvpn сильно режет скорость интернета?

    @res2001
    Developer, ex-admin
    Видимо, при включенном ВПН у вас меняется шлюз по умолчанию и весь трафик идет через ВПН.
    Это реально может сильно снизить скорость.
    Если ВПН вам нужен именно для такого использования, то скорее всего стоит перенести сервер на другую площадку.
    Если же ВПН вам нужен, например, для доступа в корпоративную сеть, то стоит убрать настройку шлюза по умолчанию из конфига ВПН сервера.
    Ответ написан
    Комментировать