Задать вопрос
  • Как считать из файла определенное слово, и посчитать сколько раз оно появляется в файле СИ?

    @res2001
    Алгоритм элементарный. Функций разрешенных для использования достаточно. Читать придется посимвольно с помощью fgetc. В цикле до конца файла читаете очередной символ, сравниваете с первым символом строки, если равны, то следующий символ нужно сравнивать со вторым символом строки и т.д.
    Другое дело, что читать посимвольно из файла - это плохая идея. Правильнее было бы читать файл большими кусками, скажем по 4 Кб или больше, и искать строку в прочитанном куске. Но задание есть задание.
    Вы сделайте собственную попытку реализации алгоритма, если будут затруднения, можете писать сюда конкретные вопросы.
    А сейчас ваш вопрос это задание - это противоречит правилам ресурса.
  • Как отсортировать матрицу в с++?

    @res2001
    Чем стандартные сортировки не устраивают? В стандартной библиотеке несколько вариантов, выбирайте.
    Ваша задача сортировки ничем особым не отличается от любых других сортировок.
    Правда из описания не понятно что вы в итоге хотите получить. Вам надо сортировать каждый столбец отдельно?
    Приведите пример исходной и отсортированной матрицы для ясности.
  • PKI. CA шифрует своим закрытым ключом или же открытом?

    @res2001
    shledon, Конечно. Для этого открытый ключ ЦА всегда должен быть в доступе.
    Фактически ЦА нужен только на этапе подтверждения сертификата или отзыва сертификата и формирования нового списка отзывов. Все остальное время его можно держать выключенным.
    Зато когда истекает срок действия сертификата ЦА - все дерево сертификатов, подписанное его сертификатом протухает. К этому событию надо готовится отдельно :-)
  • Как записать указатель в виде вектора char?

    @res2001
    iihaarr, Интересно, для чего вам указатель в vector<char>?
    я получу указатель на а?

    Нет. data возвращает указатель на первый элемент массива внутри вектора, в вашем случае возвращает char* Вы получаете указатель на содержимое arr, а не само содержимое.
  • Возможно ли создание своего типа данных - массива бит?

    @res2001
    Daniil_the_Fool,
    И size of пишет что 4 байта

    Это потому что, скорее всего, в вашем компиляторе размер bool 4 байта. Стандарт не определяет размер bool.
    Смысл подобных битовых полей в том, что на указанном типе данных выделяются биты/группы битов. Но память все равно выделяется под указанный тип данных (а не под биты). Если одного поля указанного типа будет не достаточно, чтобы вместить все биты, то компилятор добавит еще одно поле и т.д. В вашем примере правильней использовать uint8_t, тогда размер будет 1 байт. Для доступа к таким полям компилятор сам генерирует соответствующие битовые операции. При желании их можно увидеть в ассемблерном коде, вашей программы. В любом случае, как бы вы не определяли битовые поля на прямую с битами вы работать не можете, только через битовые операции. Правда подобное определение битовых полей скрывает этот факт и создает иллюзию прямого доступа к битам. Кстати, еще один момент, на битовое поле нельзя получить ссылку - это следствие того, что биты не возможно адресовать (и взять адрес битового поля).
    Подобные битовые поля - не универсальный вариант. Если вам понадобится другое количество битов, то придется менять структуру. Если нужен будет динамический размер битового поля, то вообще подобный вариант - не вариант. Правда в этом случае придется самому писать функции для доступа к битам по их номеру. Но это не большая проблема.
  • Зависает (не происходит) перемещение файлов между папками. Как исправить?

    @res2001
    Либо это дохнет диск, либо глюки в винде.
    Чтобы исключить диск сделайте тест поверхности с загрузочной флешки (не из вашей винды).
    С виндой может быть сложно - самый простой вариант переустановка.
    Посмотрите в менеджере задач и мониторе ресурсов, что происходит с ОС, в момент зависания копирования.
    Может быть какой-то процесс тянет одеяло на себя, или возможно загрузка дисковых очередей на максимумах.
  • Как найти сумму элементов массива, находящихся на нечётных позициях?

    @res2001
    В чем проблема с кодом?

    Для информации: в цикле for не обязательно переменную цикла инициализировать нулем, а так же не обязательно делать инкремент переменной цикла - можно делать произвольную операцию (операции). Конкретно к вашей задаче для обхода только нечетных элементов массива можно использовать такой цикл: for (int i=1; i<16; i+=2)
  • Как в сети Windows отобразить машины, подключённые по VPN?

    @res2001
    Для отображения сетевого окружения винда использует широковещательные запросы. Широковещательные пакеты обычно не маршрутизируются между сетями, поэтому ответы на эти запросы из ВПН не приходят (потому что запросы туда не попадают).

    Если получится сделать "мост" между реальным сетевым адаптером и "ВПН адаптером", то это будет единая сеть и широковещательные пакеты будут проходить. При этом надо сделать так, чтобы компы в ВПН и компы в ЛВС были в одной и той же IP сети. Теоретически это можно сделать, практически - не пробовал, возможна масса подводных камней.

    Другой вариант - настроить между ЛВС и ВПН proxy-arp.
  • Как оптимизировать запрос с большим количеством данных в таблице?

    @res2001
    Поле user_id текстовое? Поиск по тексту медленнее чем по числовым значениям.
    Как уже тут все писали - добавить индексы по полям, участвующим во фразе where.
    Индексация полей - это то благодаря чему ускоряются операции поиска в таблице. Без индексов кардинально вы ничего не измените.
  • Как переводить из двоичного числа - строки в десятичное число строку?

    @res2001
    jcmvbkbc, Была такая мылсь, но это же написано не в вопросе тут, а на SO. Не факт, что задачи у вопрошающих совпадают.
  • Как переводить из двоичного числа - строки в десятичное число строку?

    @res2001
    Зачем переводить в строку? Переводи в число просто установкой соответствующего бита.
    А затем просто напечатай это число printfом. Если же нужна именно строка на выходе, то можно использовать sprintf.

    b in bits of X

    В b очередной бит из Х, т.е. 0 или 1 из входной строки, а не то что у тебя сейчас. Причем 0 и 1 в своем числовом значении, а не как символ!
    Вместо binaryStack можно использовать входную же строку (если она тебе больше не нужна), просто заменяя ее значения, на значения выдаваемые алгоритмом.
  • Ошибка C++ zsh: segmentation fault "/var/folders/y7/hbkvnly103qb7050nfdxcx100000gn/T/"tempCodeRunnerFile?

    @res2001
    m4t1k_matik, Очевидно, где-то выход за пределы массива.
    Предполагаю, что это происходит внутри функции koeff(), а конкретнее, видимо в FI1 или FI2. Но это не точно. Ты передаешь в koeff() 4 массива и только 2 размерности. Как минимум у двух массивов размерности отличные от передаваемых.

    Найти место возникновения ошибки можно довольно легко:
    1. можно запустить программу под отладчиком при срабатывании segfault отладчик остановится в точке программы, где это произошло, от этого места перейдешь к своему коду по стеку вызовов, тут и будет место где произошел выход за пределы.
    2. т.к. ты под линуксом, то можно включить core dump и после того как он сформируется проанализировать его в gdb. Погугли как анализировать дампы, это не трудно.
  • Как отсортировать по столбцу данные, при этом чтобы имя столбца было взято из другого столбца?

    @res2001
    Вы хотите от SQL странного или вы так криво объясняете.
    Что если в отобранных записях есть разные значения title_list? Каким должно быть имя столбца в таком случае?

    Сделайте переименование столбцов вышестоящей логикой, вне SQL запроса, например при выводе пользователю.
    То что вы хотите не делается в рамках SQL.
    Если название столбца на момент выполнения запроса вам уже известно, то можете сделать алиас для name_list:
    'name_list as ' + $title
    Пример кода у вас, видимо на php, я не силен в нем. Думаю мысль должна быть понятна.
    Лучше подобные вещи делать с помощью prepared statments а не таким способом, как я показал. Не уверен, правда, что там можно делать алиасы.
  • Sendmail - насколько повышается уязвимость сервера?

    @res2001
    У вас не верная информация 20-летней давности. Она и тогда уже была не верна.
    sendmail как и все широко используемые почтовики достаточно безопасен, чтоб его не ломали.

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

    sendmail, postfix, exim - широко и активно применяются во всем интернете. Они давно уже избавились от детских болезней. Да, конечно, никто не гарантирует, что там нет дыр, но те что находят - исправляются. Наверняка приведенный список не полон, это просто то с чем я лично имел дело.
  • Как вывести первые 3 столбца в таблице?

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

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

    @res2001
    alenus, В следующий раз этот порт изменится и вам придется переписывать правило.
    Нужно действовать не так. Нужно выпускать весь исходящий трафик (с любого порта внутри сети) на определенный внешний порт (и возможно адрес).
  • Как вернуть массив из структуры?

    @res2001
    Метод get у тебя должен возвращать int, а в return у тебя указан array. array - это массив, следовательно ты пытаешься вернуть массив там где нужно вернуть int. В С/С++ массивы на прямую не возвращаются и не передаются (как параметры в функции), вместо них возвращается (и передается) указатель. Отсюда и соответствующая ошибка.
    Если ты действительно хочешь возвращать int, то надо писать что-то вроде: return array[0];
    Если тебе надо возвращать массив, то тип возвращаемого значения должен быть int*, о чем и написано в ошибке.
    В остальном смотри ответ Александр Ананьев
  • Как переписать функцию?

    @res2001
    Рекурсия это вариант итеративной обработки, когда есть много объектов и надо что-то с ними сделать.
    Другой вариант итераций - это циклическая обработка.
    У вас в функции нет цикла. Так что тут нет итераций, соответственно не возможно сделать и рекурсию.
    Возможно стоит озвучить тут всю задачу целиком, а не ваши выводы из нее.

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

    @res2001
    Разве что написать самому скрипт с соответствующим функционалом. Можно использовать, например, powershell или то, что лучше знаете.