Задать вопрос
  • Где искать авантюристов?

    @res2001
    Developer, ex-admin
    Попробуйте краудфандинговые площадки для финансирования.
    Ответ написан
    Комментировать
  • Черный экран после установки видеодрайвера. Как исправить?

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

    @res2001
    Developer, ex-admin
    Возможно блок питания не айс, если есть возможность, поставь другой, заведомо рабочий, на несколько дней протестировать.
    Дальше стоит протестировать память, но обычно сбои памяти не так проявляются.
    Потом материнка, видюха и процессор.
    Скачай любой диагностический загрузочный live образ с набором диагностических программ и тестируй начиная от памяти и дальше. Я использовал adminpe.ru для подобных целей.
    Ответ написан
    Комментировать
  • Скажите, с чего начать изучение Linux?

    @res2001
    Developer, ex-admin
    Основное преимущество - в бесплатности. Минусов то же хватает, как и везде.
    На счет будущего - врут. Линукс вполне актуален для определенного круга людей, вряд ли что-то изменится в ближайшие годы в этом плане.
    Поставьте Убунту в виртуалку (или любой "десктопный" дистрибутив). Самое первое что нужно - освоить менеджер пакетов для установки дополнительного софта, в разных семействах дистрибутивов они разные.
    Программистом быть не надо, нужно немного привыкнуть.
    Для того что бы настроить систему как-то не стандартно потребуется командная строка и ручное редактирование конфигов.
    Ответ написан
    3 комментария
  • Почему строка объявленная как указатель на char не изменяется, а как массив char изменяется?

    @res2001
    Developer, ex-admin
    Скорее всего потому что в варианте
    char * str = "hello";
    Сама строка "hello" хранится в памяти "только для чтения", которая выделяется ОС для констант при загрузке программы в память.
    В варианте с массивом память выделяется в стеке, соответственно проблемы с изменением нет.
    Чтоб перейти на указатель - выделите память динамически и скопируйте туда строку. В конце не забудьте память освободить.
    Ответ написан
    3 комментария
  • Какую базу данных использовать для 93 млн строк (товары)?

    @res2001
    Developer, ex-admin
    Из бесплатных PostgreSQL, оптимизируйте индексацию, систему хранения СУБД и дисковую подсистему ну и памяти в сервер добавьте, если нужно.
    Вообще вопрос абстрактный.
    Если вас не устраивает существующий вариант, то нужно найти что именно привело к этому - возможно какая-то конкретная операция (или несколько) заставляет тормозить сервер, нужно их найти и разбираться с ними.
    Если просто заменить СУБД, оставив приложение в том же виде, то на новой СУБД вы скорее всего словите те же проблемы, возможно не сразу, а через какое-то время.
    Ответ написан
    Комментировать
  • Как заиметь ровные руки(исправить проблему с учеткой)?

    @res2001
    Developer, ex-admin
    Загружайтесь с live носителя и разблокируйте администратора.
    Можно воспользоваться adminpe.ru, там в комплекте есть нужные утилиты.
    Ответ написан
    Комментировать
  • Переименовать файлы в подкаталогах по маске через скрипт в Windows?

    @res2001
    Developer, ex-admin
    Вариант переименования - скрипт просто отрезает последние 17 символов имени файла. Переименовываются все файлы в заданном каталоге и его подкаталогах.
    Инициализируйте переменную dirfiles правильным значением.
    @echo off
    SetLocal EnableDelayedExpansion
    set "dirfiles=c:\temp\"
    for /f "tokens=* delims=" %%a in ('dir /s/b/a-d "%dirfiles%" ') do (
    	set "fname=%%~na"
    	rename "%%~a" "%%~dpa!fname:~,-17!%%~xa"
    )
    Ответ написан
  • CGI это просто функция обработки данных из формы на сервере?

    @res2001
    Developer, ex-admin
    CGI это протокол (интерфейс), по которому общается веб сервер с программой обработчиком запросов.
    Ответ написан
    5 комментариев
  • Хранение времени в БД?

    @res2001
    Developer, ex-admin
    Храните в типе datetime начало и конец события, а уж интервалы обеспечите логикой. И не надо хранить не назначенные интервалы - только созданные события.
    Ответ написан
    2 комментария
  • Как реализовать влоложенные таблицы Postgresql?

    @res2001
    Developer, ex-admin
    БД с таблицей на каждый день - это не правильно.
    Пришлось работать с одним программным продуктом, где каждый день генерировалась новая таблица в БД (точнее не одна, а несколько). После некоторого времени использования ПО (2-3 года, если не ошибаюсь) база перестала работать, т.к. количество таблиц стало таким большим, что движок БД отказывался работать с ней. Пришлось вручную удалять старые таблицы, чтоб реанимировать софтину.
    Ответ написан
  • Как можно показать IP другой страны для трафика потокового вещания не туннелируя весь трафик в VPN?

    @res2001
    Developer, ex-admin
    Используйте не ВПН, а прокси. В прокси нет шифрования, поэтому гораздо выше пропускная способность.
    Ответ написан
    Комментировать
  • Как правильно передать двумерный массив в функцию?

    @res2001
    Developer, ex-admin
    Если вы изучаете С++, то лучше использовать классы стандартной библиотеки для массивов. В функцию передаете ссылку на класс.
    В чистом Си передается просто указатель и размер в отдельном параметре (или 2 размера для двумерного массива).
    Сам двумерный массив может быть представлен в двух вариантах:
    1.Как массив указателей, где каждый указатель представляет собой одномерный массив. Нужно отдельно выделять память для массива указателей и для каждого одномерного подмассива и аналогично освобождать. В этом случае возможна операция индексации обоих измерений массива, при этом массив указателей и каждый подмассив могут находится в разных участках памяти.
    void foo(int ** arr, int N, int M)
    {
    ...
    }
    int main()
    {
      int N = 10; // первое измерение массива
      int M = 20; // второе измерение массива
      int ** arr = new int * [N];
      for(int i = 0; i < M; ++i)
      {
         arr[i] = new int[M];
      }
      ...
      foo(arr, N, M);
      ...
      // Тут освобождение массива аналогично выделению в обратном порядке
    }

    2.Как одномерный массив размерностью N * M. В этом случае память под массив выделяется и освобождается вся оптом одним куском, но операция индексации первых размерностей не возможна. Но можно легко переходить от двумерного массива к одномерному, сразу вычислять нужный индекс или просто перемещаться по элементам массива с помощью временного указателя.
    void foo(int * arr, size_t N, size_t M) 
    {
      ...
    }
    int main()
    {
      int N = 10; // первое измерение массива
      int M = 20; // второе измерение массива
      int * arr = new int * [N*M];
      int * arrcur = arr;  // временный указатель для обхода массива
      int * arrone = arr;  // вариант с переходом к одномерному массиву
      for(int i = 0; i < N; ++i)
      {
        for(int j = 0; j < M; ++j)
        {
            // Вариант с вычислением адреса текущего элемента по индексам
           *(arr + i * M + j) = rand() % 10;   // вычисление нужного индекса на месте
           // Вариант с обходом массива с помощью временного указателя
           *arrcur = rand() % 10; 
           ++arrcur;  // переход к следующему элементу
           // Вариант с переходом к одномерному массиву
          arrone[j] = rand() % 10; 
        }
        arrone += M;
      }
      ...
      foo(arr, N, M);
      ...
      delete[] arr;
    }
    Ответ написан
  • Какую книгу по C++ стоит прочитать новичку?

    @res2001
    Developer, ex-admin
    Хорошая книга, можете ее продолжать изучать, а главное делайте побольше примеров, возможно в дальнейшем захочется реализовать что-нибудь свое. Тут главное практика, а не то какую книгу читаете.
    Ответ написан
    Комментировать
  • Как подключиться с win 7 на win 7 по RDP?

    @res2001
    Developer, ex-admin
    Кроме всего прочего на сервере должна работать служба удаленных рабочих столов и должен быть открыт порт tcp\3389.
    Ответ написан
  • Какие могут быть причины не читаемости файла dbf?

    @res2001
    Developer, ex-admin
    Битый файл, т.е. нарушена его структура. Откройте любым редактором/вьювером DBF, хоть тем же екселом, как предлагал shurshur , но лучше чем-то более специализированным (CDBF хорошая утилита для этих целей).
    Ответ написан
    Комментировать
  • Какие существуют бесплатные внешние программы в Windows 10 для ручного резервного копирования в Onedrive?

    @res2001
    Developer, ex-admin
    copy, xcopy, robocopy, проводник и все это доступно из коробки.
    Ответ написан
    Комментировать
  • В каком энкдодинге записывается в .txt?

    @res2001
    Developer, ex-admin
    Что лежит в msg, то и запишется в файл, без какого-либо перекодирования.
    Если нужно по другому - перекодируйте сами. Если нужно сменить кодировку символов, можно использовать библиотеки или встроенные API функции.

    PS: энкдодинг?
    Ответ написан
    3 комментария
  • Записать значения дискретных каналов в бинарный файл. С++?

    @res2001
    Developer, ex-admin
    Инициализируя вот так массив:
    int ChValue [6] = {000011};
    Вы получите в ChValue[0] = 9 - десятичное 9 - это восьмеричное 011. По правилам языка, целочисленные числовые константы, начинающиеся с 0 являются восьмеричными. В остальных элементах массива будут 0.
    Вы хотите записать шесть значений в одну двухбайтовую переменную (хотя было бы достаточно и 1 байта).
    Для этого вам нужно использовать битовые операции.
    Например:
    // ChValue - исходный массив значений по каждому каналу
    int ChValue [6] = {0, 0, 0, 0, 1, 1};
    uint16_t val = 0;
    for(int i = 0; i < 6; ++i)
    {
      if(ChValue[i] == 1)
         val |= 1 << i;
    }
    // в результате в val будет установлен в 1 бит с номером канала в котором в ChValue единица.

    После этого просто запишите val в файл.
    Ответ написан
  • Как удалить папку systemprofile в windows 10?

    @res2001
    Developer, ex-admin
    Дайте себе права на запись на эту папку и все вложенные объекты. Возможно понадобится изменить владельца, а потом дать права.
    Ответ написан