Задать вопрос
  • Почему в С++ появляется Segmentation fault?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    head - указатель, который вы инициализируете 0. Потом вы пытаетесь обратиться к полю sizeOfChild по этому указателю, вот тут все и падает. Потому что поля нет, как нет и всего head - вы же под него память не выделяли.
    Ответ написан
    Комментировать
  • Как скачать видео частями?

    twobomb
    @twobomb
    youtube-dl — библиотека для скачивания видео с YouTube
    Вот нашёл обертку под C#
    YoutubeDLSharp

    var res = await ytdl.RunVideoPlaylistDownload(
        "https://www.youtube.com/playlist?list=PLPfak9ofGSn9sWgKrHrXrxQXXxwhCblaT",
        start: 52, end: 76
    );
    Ответ написан
    Комментировать
  • Как оптимизировать алгоритм с Эвклидовым расстоянием?

    GavriKos
    @GavriKos
    Ну про квадрат расстояния уже сказали.
    Далее - tuples проинициализируйте каким то количеством. Потому что на Add при аллокации съедите много времени.
    Ну перебор конечно конский - посчитайте количество итераций, их многовато как то ) Но тут вряд ли что то сделаешь, хз. Надо читать задачу. Может можно ограничить эти итерации.
    Дальше. Не видно где меняется x и что это такое, но выглядт так что Math.Pow(i - x, 2) можно вычислить до внутреннего цикла.

    Я бы еще попробовал убрать Create у тупли - тоже аллокация.

    НАсчет ГПУ. У вас кроме корня (который не нужен) судя по всему нет дробных чисел (хотя мы не знаем что такое x и y) - поэтому именно использование ГПУ тут не даст космического прироста. А вот второй цикл похоже можно распараллелить. На чем параллелить - без разницы
    Ответ написан
    Комментировать
  • Как построить график функции в c++?

    GavriKos
    @GavriKos
    Делайте на Qt.
    Ответ написан
    Комментировать
  • Что делать после изучения основ С#?

    @evgeniy_lm
    Что делать после изучения основ С#?
    Что хотите. Когда вы начинали изучать основ С# вы думали для чего вы это делали?

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

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    Тут есть 5 подзадач:
    1) разбить строку на слова
    2) определить по слову, является ли оно числом в десятичной системе счисления
    3) Перевести слово в число
    4) перевести число из десятичной системы счисления в 16-ричную
    5) Записать число в 16-ричной системе в строку

    1,3,4 и 5 - стандартны и гуглятся.
    2 - подсказка: проверьте, что слово состоит только из символов '0'-'9' и не начинается с '0'. По идее, надо бы еще разрешить слово "0", но ноль, он и в 16-ричной системе будет ноль, поэтому такое слово можно не учитывать в вашей задаче. Символы 0..9 имеют коды ascii подряд, поэтому в программе достаточно записать с >= '0' && c <= '9'.
    Ответ написан
    Комментировать
  • Windows 11 из-за чего новые и/или свёрнутые вкладки теряют доступ к интернету?

    @Drno
    для начала - удалить то что понаставлял из ПО магазин и вендор ноута
    далее - поставить дрова с сайта-производителя ноута, отключить все антивири, и проверять
    Ответ написан
    2 комментария
  • Как в Си вывести в консоль без записи в буфер?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Если я использую printf("asd"), то весь текст в кавычках будет выведен на экран и записан в лог файл. Вот такая команда: './a.out > file.log'.

    Здесь несколько несуразностей: 1) printf в ./a.out > file.log не выведет ничего на экран, всё будет перенаправлено в файл. но 2) сам printf об этом ничего не знает. Он выводит данные в поток стандартного вывода, куда они перенаправляются потом -- не его дело. 3) оператор > перенаправляющий вывод -- это инструкция командной оболочке как запускать программу, к самой программе отношения не имеет.

    Есть ли какая другая команда вывода, которая будет текст выводить только в терминал, без записи в файл?

    Есть! ./a.out, без каких-либо изменений в коде.
    Ответ написан
    4 комментария
  • WxWidgets Debug Alert - как убрать?

    Adamos
    @Adamos
    Вообще-то использование wxWidgets предполагает использование класса wxApp, а не просто вызов функций библиотеки в main(). Вы пытаетесь выдернуть из библиотеки одну функцию, она не находит привычного окружения и валится. Все логично.
    Ответ написан
    2 комментария
  • Как отправить нажатия клавиш в неактивное приложение?

    VoidVolker
    @VoidVolker Куратор тега C#
    Dark side eye. А у нас печеньки! А у вас?
    Неактивному окну - только через отправку стандартного оконного сообщения. Если не работает - то только реверсингом приложения и взломом.
    Ответ написан
  • Почему msbuid создает dll и exe?

    Есть опция PublishSingleFile - как раз склеит DLL и exe.

    self-contained можно отключить
    dotnet publish -c Release -r win-x64 -o ./pub -p:PublishSingleFile=true --self-contained false
    Ответ написан
    8 комментариев
  • Как найти числа в матрице начинающиеся на 7?

    @GaalSpear
    1. Способ костыльный и медленный: преобразовать число в строку и проверить первый символ.
    2. Посмотреть порядок числа, и проверить принадлежность диапазону (как написали выше, если 100..900, то нужный диапазон - 700..799, а, например, для 9..99 нужный диапазон - 70..79).
    3. найти первую цифру числа и посмотреть семёрка ли она. Это можно сделать например применением деления в цикле. (Ну как бы вы писали преобразование числа в строку, только вручную?)

    узнать первую цифру числа можно например так:
    int iValue = 8776892;
    
    std::cout << "Source number : " << iValue << std::endl;
    for(int iv2 = iValue; iv2 != 0; iValue = iv2, iv2 = iValue / 10);
    std::cout << "First number digit : " << iValue << std::endl;
    
    if (iValue == 7)
    	std::cout << "SEVEN !!!!" << std::endl;
    else
    	std::cout << "NOT SEVEN !!!" << std::endl;
    Ответ написан
    Комментировать
  • Требования к самописной CRM?

    Jeer
    @Jeer
    уверенный пользователь
    Аж жуть берет от таких заданий ) Покупка готового инструмента обычно дешевле, чем разработка с нуля. Особенно если разработка осуществляется одним человеком. Особенно если опыта мало. Особенно, если на поддержке будет тот же человек, что и на разработке ) безумие :) проект полетит в помойку, но у вас будет строчка в резюме по созданию проекта, можете обкатывать любые технологии за счет глупого работодателя.

    По делу без брюзжания:
    Писать под винду моветон - лицензии дорогие
    Вин формс зачем? - делайте веб апи с фронтом на вью/реакте/ангуляре. Нужна кроссплатформенность, чтобы хоть с телефона можно было зайти и нажать нужную кнопку в системе.
    Апи нужно, потому что будет много интеграций с другими системами, загрузка/выгрузка в 1с, не дай бог будете телефонию подключать
    Внутренняя сеть решается с помощью впн сервера.
    Помимо функциональных требований существуют еще технические, должен быть мониторинг, вы должны всегда знать сколько ресурсов потребляет ваш сервер, сколько данных занимает на дисках, логи и трейсы - гуглится по слову Observability, обычно не закладывается в смету, но к этим вопросам приходят рано или поздно
    Что еще, ну, по функционалу тут проще, открываете презентации в популярных CRMках, смотрите, что они могут, выписываете списком и идете к заказчику, чтобы он указал галочками, что будете делать, что не будете
    потом прикидываете по трудозатратам и озвучиваете сроки из которых можно понять примерную стоимость проекта. Часто одно маленькое предложение, типа того же "выгрузить данные в 1с" грозит несколькими десяткми часов работы, потому что другой отдел, с ними нужно договориться и сделать интеграцию. Или "должен быть отчет такой-то", а там как начнешь разбираться, еще 5 раз посовещаться сначала надо ))
    Ответ написан
    Комментировать
  • Как сформировать массив в потоке, чтобы потом отобразить его на графике?

    Zifix
    @Zifix Куратор тега Qt
    Barbatum
    Вы хоть одну статью, хотя бы на Хабре прочитали, как правильно многопоточку организовывать? Ваш код — это нечто заведомо неработоспособное, написанное наугад. Книжку хоть одну по Qt прочитали?

    Например, вот это — лютая дичь, бесконечный цикл в UI потоке, из которого нет никакого выхода, очевидно, что оно зависает:
    void MainWindow::on_pushButton_15_clicked() 
    {
        ui->pushButton_15->setText("STOP");
        while (ui->pushButton_15->text()=="STOP"){
           spec_thrd->run();
        }
    }
    Возьмите заведомо рабочий пример, разберитесь, зачем нужна каждая конструкция, каждая строчка, и потом уже пошагово допиливайте его под себя.
    Ответ написан
    Комментировать
  • Можно ли обновить Astra Linux smolensk?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Ничего не делать. Потому что Смоленск - Special Edition cо всяческими сертификатами. Устанавливаешь несертифицированное обновление - и все, сертификация накрылась. Вместе с тобой.

    Трогать Special Edition крайне не рекомендуется - обновление только со штатных серверов.

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

    Да, и вручную не стоит ничего собирать - система должна быть ровно в том состоянии, в каком ее поставили (не считая обновлений, которые сделаны со штатных серверов)
    Ответ написан
    5 комментариев
  • Какой компилятор выбрать для C++?

    @res2001
    Developer, ex-admin
    На винде микросовтовский компилятор, по ощущениям, лучше. Специально замеры не проводил, все субъективно. Причем не обязательно использовать студию, можете сидеть на том же CLion (или QtCreator) и собирать с помощью cl. Можно поставить вообще только MS Build Tools - туда как раз и входит компилятор без IDE. На счет лицензирования - вопрос интересный. Предоставляют компилятор бесплатно, но могут быть лицензионные ограничения на разработку коммерческого софта.

    На линукс gcc или clang.

    Разница между компиляторами, конечно, есть. Разные расширения, разная степень поддержки стандартов, особенно свежих. Могут отличаться возможности оптимизации и т.п. Например микрософт никогда не поддерживала стандарты Си и там много чего нет еще с С99. Стандарты С++ они официально поддерживают.
    Если вы пишите приложение используя только стандартизованные языковые возможности (без расширений компилятора), то, по идее, не должно быть проблем пересесть на другой компилятор в рамках одной ОС.
    Кстати в gcc по умолчанию расширения включены.

    Есть и другие компиляторы. Например у интел хороший оптимизирующий компилятор, но он стоит денег.
    Ответ написан
  • Почему считывается с файла только 1 слово, а не весь текст?

    @res2001
    Developer, ex-admin
    Не раскрыта тема о классе House. Не видя его трудно что-то сказать.

    Но могу предположить, что в House, например, поле address является std::stringом.
    А std::string хранит свою строку в динамической памяти и sizeof(std::string) в общем случае совсем не равен размеру хранящейся в нем строки. Записывая в файл sizeof(std::string) байт вы записываете грубо говоря только адрес памяти где лежит строка и размер строки, но не саму строку.
    Вам нужно делать нормальную сериализацию/десериализацию полей объекта House.
    Ответ написан
    4 комментария
  • Что возвращает return в С++?

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

    Советую всем программистам на C++ хотябы почитать про ассемблер.
    Стек, регистры, вот это вот все. Тогда станет понятно, как работает процессор.

    Тогда станет понятно что "сам объект tmp" никак не вернуть. Это локальная переменная, лежащая на стеке в части, которая будет отброшена при выходе из функции. Отсюда вытекает, что вообще говоря, там должна быть копия.

    Но есть такая оптимизация, как RVO. В стандарте даже прописано, когда конкретно она гарантирована. Тогда копии не происходит. При этом компилятор вообще не создает локальной переменной. А вместо этого сразу же работает с тем местом, куда надо будет возвращать значение.

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

    Adamos
    @Adamos
    Открыл файл - записал его путь в настройки приложения.
    Открыл приложение - прочитал настройки - получил путь к последнему открытому файлу и делай с ним что хочешь.
    Причем для этой логики некритичен ни язык, ни ОС, и WinAPI не нужно совершенно.
    Ответ написан
    Комментировать
  • Почему на одном из компьютеров в ZIP не верно отображаются имена файлов?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    проверьте установки системы панель управления регион администрирование
    язык для не unicode программ
    Ответ написан
    1 комментарий