Задать вопрос
  • Как написать свой компилятор?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Трансляторы
    Седой и строгий
    Содержимое этой книги в ответ не вместится.
    60b76e70c748b529799442.jpeg
    А ваш вопрос на столько общий, что короче не получится.
    Ответ написан
    3 комментария
  • Почему не получается скомпилировать файл через wsl на c?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    make mario.c

    говорит, что нужно собрать mario.c, но собирать ведь надо не его, mario.c -- это исходник. Пиши make mario чтобы собрать mario из mario.c. И да, это работает без Makefile за счёт втроенных в make правил только для таких простых случаев. Для более сложных надо будет писать Makefile.
    Ответ написан
    2 комментария
  • Почему типы полей структуры в качестве указателя не соответствуют своим размерам в памяти (target wasm32)?

    Vindicar
    @Vindicar
    RTFM!
    Выравнивание по 32 бита.
    Некоторые архитектуры процов вообще требуют, чтобы целое размером N байт имело адрес кратный N.

    Для других это не обязательно, но доступ по адресам, кратным разрядности, быстрее. Так что компиляторы часто вставляют неиспользуемые байты в структуру, чтобы подвинуть следующее поле на "удобный" адрес. В плюсах (а может и в си) вроде есть директива #pragma pack, которая эти м управляет. Насчёт раста не знаю.
    Ответ написан
    3 комментария
  • Как решить ошибку Unhandled exception. System.IndexOutOfRangeException: Index was outside the bounds of the array?

    wataru
    @wataru
    Разработчик на С++, экс-олимпиадник.
    Переведите текст ошибки на русский. У вас выход за границу массива. Запустите код в отладчике - он остановится в том месте, где это происходит.

    Возможно файл map.txt лежит не там, программа его не находит и не может его прочитать. Получается пустой массив file, но в функции GetMaxLengthOfLine идет обращение к 0-вому элементу, а его нет.

    Или строки в файле разной длины, тогда при присваивании map[x, y] = file[y][x]; идет выход за границу массива file[y] в не самой длинной строке. Ведь x проходится до длины самой длинной строки.
    Ответ написан
    1 комментарий
  • Общественное достояние и Ютуб. Что делать?

    @CreoLine
    Если вы создаете видео находясь в России, нужно руководствоваться российскими законами независимо от того, где находится хостинг.
    Можно использовать фото, являющиеся общественным достоянием любых стран, но нужно учитывать разницу в законах.
    Чисто теоретически, использование произведения, являющегося общественным достоянием в США, может быть незаконным в России.
    В России, например, произведение может охраняться авторским правом на срок до 70 лет после смерти автора, а в США произведения, опубликованные до 1926 года, как правило, являются общественным достоянием. Следовательно, если произведение находится в общественном достоянии в США, это не обязательно означает, что оно находится в общественном достоянии в России. Вероятность наткнуться на такой случай мала, однако для полной уверенности есть смысл использовать общественное достояние России.
    Ответ написан
    9 комментариев
  • Как заставить def работать?

    Vindicar
    @Vindicar
    RTFM!
    Поучи язык. Просто поучи, без ботов.
    def объявляет функцию, но не вызывает её.
    Ты её объявляешь внутри record_volume(), но ничего с ней не делаешь.
    Ответ написан
    Комментировать
  • Как поменять функцию each, удаленную в PHP 8?

    Sasha_Odesskiy
    @Sasha_Odesskiy
    бла-бла-бла!
    JS пишет Call to undefined function each() (0) "Вызов неопределенной функции each() (0)"
    Это значит, такой функции нет, прочтите ещё раз документацию по использованию JQuery each
    Ответ написан
    Комментировать
  • Как поменять функцию each, удаленную в PHP 8?

    vitaly_74
    @vitaly_74
    вы сейчас процитировали javascrip jquery а не php8
    Ответ написан
    Комментировать
  • Можно ли во время теста в Cargo подставлять другие rustflags?

    @AHMED_RAPIRA Автор вопроса
    вообщем есть такое решение, которое позволяет подставлять rustflags в зависимости от profile:
    https://github.com/rust-lang/cargo/pull/10217

    в целом можно выкрутиться с таким решением, но сейчас оно доступно только для nightly сборки. опять тупик какой-то

    я сделал костыль: удалил config.toml и создал от него два конфига - один для сборки с rustflags, а другой для тестов без них. затем написал shell скрипт, который в зависимости от сборки или тестирования копирует нужный конфиг в виде файла config.toml, а сам config.toml занес в .gitignore

    пока живу с таким решением, в целом все это печально
    Ответ написан
    Комментировать
  • Как думаете, с чем связана ошибка и как ее исправить?

    @res2001
    Developer, ex-admin
    Про size_t - если вы на 100% уверены, что у вас никогда не случится потеря данных при преобразовании из 8 байтного беззнакового size_t в 4 байтный знаковый int, то можете сделать явное преобразование типов (cast). Но гораздо правильней для размера (всего чего угодно) использовать size_t (а не int), как это давно уже делают в std.
    Про strncpy - в некоторых случаях она может быть не безопасной. Если вы на 100% уверены, что в вашем случае она точно безопасна, то можно забить на ошибку, объявить макрос, который указан в тексте ошибки и на этом проблема будет исчерпана. Но есть безопасные аналоги строковых функций у них к имени добавляется суффикс _s. В вашем случае безопасный аналог strncpy_s. Используйте безопасные функции. Безопасные функции немного медленней работают, за счет дополнительных проверок и т.п.
    Ответ написан
    6 комментариев
  • Какие курсы/видеоуроки по UNITY вы посоветуете?

    @Ezekiel4
    Охотник на пиратов и сборщик монолитов
    Для начинающего - тупо любые популярные. На раннем этапе там напортачить сложно, потому просто смотрите, чтобы подача материала была вам комфортна. Начало это интерфейс, инструменты, основные вкладки, основы физики и освещения. Дойдя до этого этапа, вы уже сами будете легче понимать, какой именно источник информации вам более комфортен - его дальше и смотрите/читайте.
    Ответ написан
    Комментировать
  • Что быстрее и меньше занимает памяти: dict или Redis?

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

    Владелец может увидеть ваш аккаунт в телеграмм, и то, что вы пишите в этот бот.
    Айпи таким образом узнать невозможно
    Ответ написан
    3 комментария
  • Ошибка компилятора CS0111?

    GavriKos
    @GavriKos
    Микропетпроджект - домашнее облако homeCloud
    1. Читать ошибку, искать строчку кода с ней
    2. Пользоваться переводчиком
    3. Учить сишарп
    4. Использовать ide с подсветкой ошибок
    5. Не определять два метода Jump с одинаковым прототипом, о чем прямо говоит ошибка
    Ответ написан
    Комментировать
  • По каким признакам можно выявить сканирование портов?

    Tkreks
    @Tkreks
    Системный инженер
    По признаку попытки открыть соединение с разными портами за короткий промежуток времени. Т.е. допустим, к вам поступают пакеты на порты допустим с 10 по 1000 в течении одной минуты, ну этой явный перебор портов.
    Вообще сейчас сканеры портов очень умные, сканируют определенные диапазоны и с определенной частотой, поэтому как правило выявить их сложно. Если вопрос в блокировке, то рекомендую вносить IP адрес в черный список, когда он пытается постучать в заведомо закрытый порт. Т.е. у вас SSH не на стандартном порту 22, а допустим на 222, если кто то стучит на 22 порт, вносим его в черный список сразу.
    Ответ написан
    1 комментарий
  • Стоит ли покупать лицензию MS Office в интернет-магазинах?

    GavriKos
    @GavriKos
    Микропетпроджект - домашнее облако homeCloud
    Подвох может быть в том, что это будет какая нить OEM лицензия которую потом отзовут.

    К тому же, если покупаете чтобы быть чистым в лицензионном плане - то покупать нужно только у майкрософта или у оффресселлеров, коими озон и продаваны на нем вряд ли являются. Т.е. это бесмысленная покупка
    Ответ написан
    Комментировать
  • Можно ли изучить игровой движок Godot без знаний англ?

    Kentavr16
    @Kentavr16
    long cold winter
    В теории любой язык программирования/фреймворк можно выучить без английского. На практике же английский настолько ускоряет изучение любой технологии, что по моему мнению абстрагироваться от изучения английского бессмысленно. Благо сейчас для этого есть все инструменты.
    Вооружайтесь гугл переводчиком и вперед. Уверяю, если просто читать то что переводишь и пытаться уловить контекст, необходимый минимум в 500-1000 слов вы выучите за очень короткий промежуток времени.
    Если же английский одолжил у вас до получки и не вернул (или вы прямо ненавидите этот язык по другой неведомой причине), то ответ - да, можно изучить. Простое зазубривание и перевод документации. Для осмысленности будет достаточно понимать перевод ключевых терминов.
    Ответ написан
    Комментировать
  • Creative Commons. Как это работает?

    freeExec
    @freeExec
    Участник OpenStreetMap
    СССР не было открытых лицензий, да и материалов, публикуемых как общественное достояние, я то же не припомню (это как раз те самые где не надо никого упоминать и можно делать всё что угодно). Так что, чтобы сделать всё по закону, вам надо общаться с авторами напрямую и заключать соглашения на использование.
    Ответ написан
    Комментировать
  • Почему типы из заголовка cstdint доступны без его включения?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Вам повезло. Какой-то из включаемых вами других хедеров уже включает cstdint. Поскольку система инклудов в C++ идет еще из C и это дикое и неудобное легаси (текст хедера тупо вставляется в файл вместо include препроцессором), то такое рекурсивное включение работает.

    Но это плохая практика - стоит включать все, что вы используете всегда. Потому что потом вы что-то поменяете, исключив какой-то уже не нужный вам хедер отсюда, или из другого хедера, и у вас вылезет ошибка о неопределенных типах из cstdint.
    Ответ написан
    Комментировать