• Что лучше для новичка в программировании C или C++?

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

    @res2001
    Developer, ex-admin
    Останавливается на eth0 VM1? Тогда все нормально.
    А вы чего хотите? Пакет до нужного хоста доходит, ответ есть.
    Или вы хотите, что бы в адресе отправителя ответа был указан адрес на который отправлен пакет? Но такое и с IP4 не везде так. Специфика реализации стека. Ответ генерируется не сетевым адаптером, а ОС.

    PS: если не ошибаюсь, в Windows XP вообще нельзя было пропинговать второй интерфейс - она просто не отвечала на подобные запросы. Как в современных версиях - не знаю.
    Ответ написан
    Комментировать
  • Есть ли книги по физике аналогичные двухтомнику Леонарда Сасскинда "Теоретический минимум"?

    @res2001
    Developer, ex-admin
    Школьный учебник по физике?

    В лохматых годах была такая серия книг под общим названием "Берклиевский курс физики" в 5 томах. Каждый том посвящен некоторому разделу физики. Очень не плохо все изложено и можно выбрать интересующий раздел и углубиться в него. Правда староват, конечно, но ведь законы природы последние несколько лет не особо менялись.
    Ответ написан
    Комментировать
  • Что происходит со ссылкой на элемент списка?

    @res2001
    Developer, ex-admin
    В питоне каждый объект имеет счетчик ссылок.
    Переменные это фактически ссылки на объекты.
    При удалении переменной счетчик ссылок объекта декрементируется, при создании ссылок (копирование или создание переменной) счетчик инкрементируется.
    После операции декремента счетчика ссылок питон проверяет счетчик на равенство 0 (т.е. когда ссылок на переменную больше нет). И если счетчик нулевой, то переменная удаляется из памяти (освобождается память занятая объектом).
    Так что если удалите someList и на его элементы не будет других ссылок, то и сами элементы удалятся из памяти. Т.к. после цикла item сохраняет ссылку на последний элемент, то после удаления someList item по прежнему будет доступен.
    Вот такой он хитрый сборщик мусора в питоне :-)
    Ответ написан
    Комментировать
  • Почему задержка при печати сетевого принтера с одного компьютера?

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

    PS: довольно часто бывает, что новые дрова работают хуже старых.
    Ответ написан
    1 комментарий
  • Где и как хранится имя переменной?

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

    @res2001
    Developer, ex-admin
    1.Для Си можно MathGL попробовать или в том же Qt руками нарисовать (или найти подходящую библиотеку для Qt). Если у вас приложение на С/С++ с графическим интерфейсом, то подобный график и самому воспроизвести не трудно.
    2.Написать модуль для матлаб, на сколько помню там это не сильно сложно делается, правда массивы данных не передавал.
    3.Я для этих целей сделал обертку над библиотекой, реализующую модуль для Python и графики рисую теперь в питоне. В питоне можно сразу весь массив передавать, без конвертации, и средствами NumPy и Matplotlib отображать в графике.
    Ответ написан
    Комментировать
  • Библиотека численных методов. Какой инструмент выбрать?

    @res2001
    Developer, ex-admin
    Даже странно такое сравнение. Если требуется эффективность, то Си/С++ без вариантов.
    Насчет ног - не так страшен черт. Пишите тесты, будьте внимательны с указателями и все получится.
    Ответ написан
    Комментировать
  • Что такое asyncio и в чём реальное отличие от многопоточности?

    @res2001
    Developer, ex-admin
    apache - многопоточный веб-сервер.
    nginx - асинхронный.
    Угадайте почему на задачи обслуживающие 100500 запросов в секунду ставят nginx?
    Ответ написан
    2 комментария
  • Как запустить jar из bat файла?

    @res2001
    Developer, ex-admin
    через start:
    start javaw -jar lmt.jar
    Ответ написан
  • Внутренняя версия Win 10 аналогична Win 8\server 2012. С чем связано?

    @res2001
    Developer, ex-admin
    Скорее это у вас что-то с реестром/.netом
    Проверьте что выдают в командной строке команды:
    wmic path Win32_OperatingSystem get version
    и
    ver
    Ответ написан
    2 комментария
  • Как искать повторяющиеся слова в строке?

    @res2001
    Developer, ex-admin
    Как-то так по моему. Не проверял.
    void counter_of_all_word(int count, int max, char**mass_of_all_word,int *mass)
    {
      char **empty_mass = (char**)calloc(count, sizeof(char*));
      int *count_mass = (int*)calloc(count, sizeof(int));
      int i, j, k;
      for (i = 0; i < count; i++)
      {
         for(j=i;j<count;++j)
         {
            // Ищем в mass_of_all_word строку не существующую в empty_mass
            for(k=0;k<i;++k)
               if(strcmp(empty_mass[k], mass_of_all_word[j])
                   break;
            // Строка найдена - mass_of_all_word[j]
            if(k == i)
            {
                   empty_mass[i] = mass_of_all_word[j];
                   count_mass[i] = 1;
                   break;
            }
          }
          // Не существующие строки кончились 
          if(j == count)
             break;
    
          // Теперь считаем количество новых строк
         ++j;
         if(j < count)
             for (; j < count; j++)
               if(strcmp(empty_mass[i], mass_of_all_word[j])
                   ++count_mass[i];
      }            
    /*
    На выходе из цикла в empty_mass уникальные слова. Количество уникальных строк в i. В count_mass количество каждого уникального слова в mass_of_all_word.
    Осталось придумать как всю эту красоту вернуть вызывающей функции.
    
    Здесь я не копирую строки, а просто присваиваю указатель строки из mass_of_all_word в empty_mass. Если нужно копировать строки в empty_mass, то нужно выделить память под строку, затем функцией strcpy или memcpy скопировать строку.
    */
    }

    Сначала пытался разобрать ваши ошибки, но потом плюнул - проще написать код.
    И разберитесь с указателями и строками в Си, вы явно не понимаете как с ними работать.
    На счет возврата значений - послушайтесь совета Павел Каптур определите структуру с двумя полями - указатель на строку и счетчик количества и работайте с массивом структур. Тогда просто будете возвращать этот массив структур. При этом память под массив структур можно выделять по максимальному количеству (count) либо отдельно под каждую найденную строку (тогда нужно выделять память под массив указателей на структуры размером в count и отдельно под каждую структуру), либо делать связный список :-) В общем задачка вроде простая, но из нее легко сделать довольно сложную.
    И не забудьте потом всю эту память освободить.
    Ответ написан
    4 комментария
  • Как присваиваться несколько и более ip адресов к одному серверу?

    @res2001
    Developer, ex-admin
    Нормально присваиваются. Это реализовано во всех операционках.
    Кроме того есть варианты:
    1. в компе 1 сетевой адаптер с несколькими адресами
    2. несколько сетевых адаптеров, на каждом может быть несколько адресов.
    Ответ написан
    1 комментарий
  • Какая программа менеджмента паролей подойдет для совместной роботы в IT отделе?

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

    @res2001
    Developer, ex-admin
    Скорее всего нет прав, возможно не на сам скрипт, а на вышележащие каталоги.
    Ответ написан
  • Почему возвращается Server %r not found in known_hosts' % hostname при том что сервер доступен по telnet по ssh 22 порт?

    @res2001
    Developer, ex-admin
    Ключевая фраза: "not found in known_hosts". Т.е. не найден в списке известных хостов.
    Ваш клиент получил ключ от сервера, но ключа нет в списке известных хостов.
    Обычно интерактивные клиенты запрашивают в этом случае у пользователя, что-то типа "Неизвестный сервер, добавить его в список известных?". В вашем случае это делается как-то программно или настройками пакета. Курите мануал в этом направлении.
    Ответ написан
    Комментировать
  • При подключении по RDP выводится только Администратор и Другой пользователь. Как отобразить все учётные записи?

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

    @res2001
    Developer, ex-admin
    Шлюз вы из этой записи не узнаете, его указывают отдельно при настройке компа.
    1. Всего в IP адресе 4 байта (каждая из 4 цифр адреса - 1 байт), это 32 бита.
    2. Последняя цифра в вашей записи - 30 (это длина маски подсети), говорит о том, что из 32 бит адреса 30 старших бит являются маской подсети. На вашем примере:
    маска подсети: 10.7.4.000000 - последнюю цифру я представил в двоичной системе (первые нет смысла, т.к. они целиком входят в маску).
    Маска подсети одинакова для всех узлов подсети. Для того чтобы узлы из одной сети могли обращаться к узлам другой сети нужны шлюзы. Шлюзы или непосредственно имеют адреса в обеих подсетях или используют другие промежуточные шлюзы для доступа к сетям. Так работает интернет на IP уровне.
    3. Для адресации хостов в сети у вас остается 32-30=2 бита. В двух битах можно представить 4 значения: 00, 01, 10, 11. При этом меньшее и большее значение используется стеком TCP/IP для разного рода групповых адресаций и широковещательных рассылок.
    Исходя из вышесказанного на адресацию хостов по вашему примеру остается только 2 значения. Т.е. в вашей подсети может быть 2 хоста.
    Ответ написан
    Комментировать
  • Кто-нибудь знает толковый/любой обозреватель исходных файлов?

    @res2001
    Developer, ex-admin
    По исходникам любая IDE в своем менеджере проектов умеет показывать дерево объектов, функций, типов. Та же студия, например.
    Ответ написан