Задать вопрос
  • Как обновить с++ на мак?

    @res2001
    GavriKos, Действительно
    Впрочем, моя ошибка в этом, не влияет на остальное мною написанное.
    Написано
  • Как обновить с++ на мак?

    @res2001
    davidskyborn, Наверное потому что в твоем коде нет проверки для 23 стандарта и опять срабатывает блок else.
    Сделай то, что я написал в коментариях, чтоб снять для себя этот вопрос.
    И хорошо бы потренироваться для других значений этой опции, после изменения не забывай пересобрать программу с предварительным удалением предыдущей сборки.
    Написано
  • Как обновить с++ на мак?

    @res2001
    davidskyborn,
    без понятия :(

    Если используешь VSC как IDE, то видимо там у тебя программа собирается с помощью cmake, тогда можно в CMakeLists.txt добавить:
    set(CMAKE_CXX_STANDARD 20)
    set(CMAKE_CXX_STANDARD_REQUIRED ON)
    set(CMAKE_CXX_EXTENSIONS OFF)

    Хотя я не в курсе чем там VSC пользуется для сборки на МАСах. Может там что-то свое.
    Для простоты можешь собрать руками из ком.строки и там задать этот параметр. Типа:
    g++ -std=C++20 main.cpp -o main
    Написано
  • Как обновить с++ на мак?

    @res2001
    1. Собираешь код как? Указываешь компилятору какой стандарт использовать?
    2. Если на первый вопрос ответ "нет", то вероятно у тебя в компиляторе какая-то промежуточная версия, не соответствующая константам и просто срабатывает ветка else.

    Для теста задай компилятору версию стандарта (ключ -std=c++20 ...) и проверь, что будет выдавать программа.
    Дальше собери без ключа std и выведи значение макроса __cplusplus. А потом, подумаешь как лучше построить условие.
    Думаю, тут надо использовать не равенство, а >= и вложенные ifы.
    Написано
  • Как это сделать это задание на c++?

    @res2001
    Demorozzz, Посмотрите таблицу CP1251, например тут: https://ru.wikipedia.org/wiki/Windows-1251
    Разница между строчной и прописной русской буквой в этой кодировке всегда константа, кроме буквы ё. И так в большинстве кодировок.
    Вам надо определится только со знаком константы. Если введена прописная буква, то константа положительная, если строчная - отрицательная.
    Написано
  • Создал личный сервер в майнкрафт. после закрытия программы Putty, сервер закрывается (я полный ноль, все делал по гайдам), что делать?

    @res2001
    Просто установить screen мало - надо его использовать.
    Вместо screen можно использовать tmux, он то же умеет в это.
    Но совсем хорошо - это запускать все что должно работать "фоном" как службы (сервисы). Службы отвязаны от сеанса пользователя, не отваливаются при отключении соединения ssh, могут стартовать самостоятельно при перезагрузке.
    Не знаю можно ли запустить сервер майнкрафт как службу, эта тема меня не интересует.
    Написано
  • Как подключить dll к консольному приложению c++?

    @res2001
    Подключение dll к консольному приложению ничем не отличается от такого же действия для "не консольного" приложения.
    Для подключения любой библиотеки нужно выполнить одни и те же действия:
    1. Опционально: добавить в опции компилятора путь поиска заголовочных файлов библиотеки - опция -I компилятора
    2. В своих исходниках подключить заголовки библиотеки с помощью #inlude и использовать библиотечные вызовы по необходимости.
    3. Опционально: добавить в опции компилятора путь поиска бинарных файлов библиотеки (для микросовтовского компилятора файлов lib) - опция -L компилятора
    4. Указать компилятору имя библиотеки, которую он должен использовать при сборке - опция -l
    Обязательных действий только 2, остальное выполняется, если заголовки и/или бинарники библиотеки лежат где-то где компилятор не ищет их по умолчанию.
    Обычно эти опции для разных компиляторов совпадают.
    Микросовтовский компилятор использует файлы lib при сборке, а не dll. dll подключаются уже при выполнении программы.
    В разных IDE или системах сборки опции компилятора задаются разными способами.

    Ваша ошибка говорит о том, что вы не выполнили как минимум обязательный п.4 из вышеприведенного списка. Возможно еще понадобится и п.3.
    Написано
  • Почему возникает ошибка от VK API "One of the parameters specified was missing or invalid: photo is undefined"?

    @res2001
    Не имел дела с VK API. Но возможно тут
    save_url += "&photo=" + photo_data;
    photo_data - пустая строка. Выводите на экран сформированные запросы перед отправлением и посмотрите, что там получается.
    В тексте ошибки написано практически все: photo is undefined. Т.е. не определен параметр photo. Что собственно видно из ответа сервера: "photo":"" - пустая строка.
    Написано
  • Как контролировать комплектацию рабочего места?

    @res2001
    Пользовался когда-то их инвентаризацией. Из плюсов - на винде не надо расставлять агенты - работает удаленно по WMI. Удаленный доступ по WMI надо, конечно, отдельно разрешать, но при наличии GPO это не проблема. Отчеты, оповещения - все на месте. Про линукс - не знаю как он с ним работает. Поддержка, кстати, отвечала довольно оперативно.
    Написано
  • Почему эта программа вычисляет факториал больших чисел неправильно?

    @res2001
    Я бы реализовал многопоточную схему примерно так:
    1. разбиваем наш факториал на части и запускаем по потоку для каждой части.
    2. каждый поток генерирует свой собственный массив factorial, куда складывает результаты умножения своей части. Каждый массив локальный для своего потока и защищать его не требуется. Таким образом по окончании работы всех вычислительных потоков у тебя должно образоваться N массивов.
    3. Затем после окончания всех потоков уже в основном потоке перемножаешь все N массивов. Когда потоки закончили свою работу все N массивов переходят во владение основному потоку и становятся локальными для него, защищать мьютексом то же ничего не надо.
    Написано
  • Почему эта программа вычисляет факториал больших чисел неправильно?

    @res2001
    Zxvvo, На счет гонок.
    У тебя в multiply_range 2 вложенных цикла. Только во втором ты пытаешься защитить factorial мьютексом, а между тем в первом у тебя есть запись в него - а это гонка в многопоточном исполнении.
    Написано
  • Почему каст u32::MAX в f32 увеличивает число на 5?

    @res2001
    Числа с плавающей точкой (float, double) всегда приближенные.
    Лишь некоторое не большое количество целых чисел может быть представлено точно в формате с плавающей точкой. Но на это не стоит рассчитывать.
    На сколько помню, точность float - 5-6 значащих десятичных цифр. У double больше.
    Написано
  • Почему эта программа вычисляет факториал больших чисел неправильно?

    @res2001
    Zxvvo,
    Я просто не программист, это у меня задание такое.

    Ты не программист, а задание у тебя как у программиста. Что-то не складывается.
    Если ты не программист, то про SIMD можешь не заморачиваться. SIMD - это SSE, AVX и т.п. расширения интеловских (и AMD) процессоров, когда одну операцию выполняешь сразу с несколькими числами.
    Написано
  • Как настроить WOL(Wake-on-Lan)?

    @res2001
    mal0znaal,
    Но (по крайней мере, на заводской прошивке) роутер не дает возможности изменять ARP таблицу.

    Проверил сейчас на своем домашнем асусе.
    1. Проброс порта с широковещательным адресом не работает. С адресом хоста - работает.
    2. Добавить записи в ARP таблицу роутера можно через консоль роутера с помощью стандартной линуксовой команды arp (см. arp --help). Правда после перезагрузки роутера запись исчезает, но, по крайней мере, таймаут на нее уже не действует.
    3. В консоль можно попасть включив ssh или телнет или в меню администрирование есть некое подобие консоли.

    Сейчас на роутере прошивка заводская, возможно с openwrt было бы больше возможностей.
    Написано
  • Как настроить WOL(Wake-on-Lan)?

    @res2001
    pfg21,
    т.е. как свезет

    Согласен. Из-за специфических особенностей конкретного роутера может не взлететь.
    Написано
  • Как настроить WOL(Wake-on-Lan)?

    @res2001
    mal0znaal,
    А вот как сделать так, чтобы запрос на определенный порт потом передавался на широковещательный адрес я не совсем понял…

    Просто указывайте широковещательный IP адрес при настройке проброса вот и все.
    Написано
  • Как настроить WOL(Wake-on-Lan)?

    @res2001
    Теоретически при настройке проброса можно отправлять широковещательный пакет, а не на конкретный адрес. В таком случае привязка к МАСу может и не понадобится. Когда-то экспериментировал с WOL, по моему такой вариант работал.

    Но если без широковещательной рассылки, то надо еще дополнительно в ARP кэш на роутере добавить статическую запись MAC-IP для включаемого компа. Настроить привязку в DHCP сервере не достаточно.
    Написано
  • Как решить ошибку при сборке DAHDI?

    @res2001
    У меня в Убунту 24.04 эта функция присутствует. Проект с использованием функции собирается.
    libbsd у меня стоит, я ее не ставил, возможно поставилась как зависимость к чему-то. C тестовым проектом libbsd не линкуется.

    Функцию можно заменить в исходниках на strncpy, делают они одно и то же, по параметрам совпадают, но strlcpy всегда возвращает нуль терминированную строку, а strncpy не всегда (тут эту проверку надо делать после вызова).

    Если без правок кода, возможно поможет включение GNU расширений - добавьте опцию -D_GNU_SOURCE компилятору. Или как вариант добавить в самое начало dahdi-base.c строку
    #define _GNU_SOURCE

    Функция strlcpy объявлена в стандартном файле string.h, а потому для ее использования не нужны ни какие дополнительные библиотеки, достаточно стандартной libc. Но она там спрятана за условными директивами препроцессора, по идее эти условия должны срабатывать при включенных GNU расширениях.
    Написано
  • Почему название файла в моей ОС изменяется само?

    @res2001
    Не ясно ваш вопрос по коду или по работе ОС?
    Какая у вас используется ОС? Такое впечатление что это ваша собственная ОСь.
    Файл фактически меняет название? Что показывает стандартная утилита ls (или dir)?
    Представленный код - это код утилиты tree или чего-то еще?
    Написано
  • Как стать начинающим программистом в текущих реалиях?

    @res2001
    я не выдающийся человек ни в чём

    Не выдающиеся люди отличаются от выдающихся тем, что на одно и то же дело выдающимся требуется меньше времени. Вот и все. Не боги горшки обжигают и программы пишут.
    В 29 лет так о себе думать категорически вредно - отбивает всякую мотивацию.
    Куда легче всего пробиться в программирование?

    Легче всего пробиться туда где больше всего вакансий. Обычно там и конкуренция большая, но как правило она большая только для джунов, специалистов по выше уровнем всегда не хватает. Так что да, вам придется на начальном этапе походить по собесам и подтянуть навыки самостоятельно.
    Ваш набор навыков указывает на то, что вы интересовались веб разработкой и фронтендом. Вот и ищите вакансии в этой сфере.
    Хороший английский - большой жирный плюс.
    Усильте JS и начинайте искать вакансии джуна или стажера (с возможностью дальнейшего роста) на фронтендера.
    Написано