Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос

Игорь

  • 10
    вклад
  • 2
    вопроса
  • 23
    ответа
  • 26%
    решений
Лайки
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Как windows выделяет память для процессов?

    Jump
    АртемЪ @Jump Куратор тега Windows
    Системный администратор со стажем.
    как она взаимодействует с ОЗУ и инструкции по взаимодействию ко всему этому через WinAPI
    В таком контексте - никак.

    Все программы работают с виртуальной памятью - другой нет.
    А уже сама ОС решает как взаимодействовать с реальным хранилищем данных, будь то планка ОЗУ, или файл подкачки. И вы не можете никак на это влиять.

    Задача Windows как раз и стоит в том чтобы полностью изолировать вас от таких вещей как ОЗУ.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как от списка пар отсортированного перейти к списку пар с уникальным первым элементом?

    longclaps
    longclaps @longclaps
    Всё уже придумано до нас, даже губозакатная машинка изобретена.
    А вот на ваш случай готового инструмента нет (
    Придётся городить велосипед:
    from itertools import groupby
    from operator import itemgetter
    
    l = [(1, 1), (1, 2), (2, 1), (2, 3), (2, 5), (2, 7)]
    for p, q in groupby(l, itemgetter(0)):
        print(p, list(map(itemgetter(1), q)))

    Запятые сами добавьте, по вкусу.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему sizeof ( somefunc ) == 1?

    Rsa97
    Rsa97 @Rsa97
    Для правильного вопроса надо знать половину ответа
    https://msdn.microsoft.com/ru-ru/library/4s7x1k91.aspx
    Оператор sizeof никогда не создает результат 0, даже для пустого класса.
    Оператор sizeof не может использоваться со следующими операндами:
    Функции. (Однако оператор sizeof можно применять к указателям на функции.)
    Ответ написан более трёх лет назад
    6 комментариев
    6 комментариев
  • Почему tgx выносится за знак интеграла?

    longclaps
    longclaps @longclaps
    Это овсянка константа, сэр.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Поиск простых чисел?

    longclaps
    longclaps @longclaps
    Допустим i - составное, т.е. разлагается на p1*p2*..*pn, тогда, чтобы удостовериться в том, что оно составное, достаточно найти его наименьший делитель (пусть это p1).
    Но он точно не больше произведения оставшихся делителей (p2*..*pn) == i / p1 - вот и всё.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Ошибка "vk" is not defined,что делать?

    iSergios @iSergios
    Python-разработчик
    У Вас объявление переменной vk закомментировано на 4 строке.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Можно ли выразить формулой?

    groog
    Даниил Попов @groog
    Я только учусь
    Смотря какого вида запись вам требуется.

    В математике вот так:

    5ad5dde2d4f0b956235599.gif

    В JS можно написать так:

    y = 4*(x>6) || 2*(x>=3) || 0

    Вариантов масса
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Какой ЯП выбрать для изучения, чтобы лучше понять основы программирования? С?

    Vlad_fox @Vlad_fox
    хочу научиться зарабатывать себе на кусок хлеба,
    подскажите - с освоения чего лучше начать - вил, лопаты, топора или швейной иглы?
    какой инструмент заложит наилучший фундамент и научит основам?
    какие книги или курсы по этим инструментам посоветуете?..

    Берешь - и копаешь, пилишь, шьешь..
    и по мозолям на руках и количеству матов и "еврика!" понимаешь твое-не твое
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Нужно ли Высшее Образование если есть опыт?

    HellWalk @HellWalk
    Мучаюсь вопросом забросить ли Высшее?

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

    По факту - жизнь твоя, решай сам.

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

    daemonhk
    Одиночка Айс @daemonhk
    ПсиХоПат
    В первом варианте вы обращаетесь к $i-му элементу массива, а во-втором, к 3 символу в этом элементе. Если хотите получить именно элемент в строке, то воспользуйтесь этим:

    $str="строка";
    $chrArray=preg_split("//u", $str, -1, PREG_SPLIT_NO_EMPTY);
    echo $chrArray[2];
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
  • В чем разница между malloc() и calloc() а также free() и dellete()?

    res2001 @res2001
    Developer, ex-admin
    Разница только в том, что calloc обнуляет выделенную память перед тем, как возвратить указатель, а malloc этого не делает. Внутри calloc, наверняка вызывает malloc для выделения памяти, а потом memset для обнуления. Так что calloc это просто надстройка над malloc для удобства. Вот схематично реализация calloc:
    void * calloc (size_t num, size_t size)
    {
       void * mem = malloc(num * size);
      memset(mem, 0, num * size);
      return mem;
    }

    Сами эти функции оперируют исключительно размером выделяемой области в байтах, им все равно что вы в дальнейшем будете делать с выделенной памятью - инты туда писать или "стринги".
    Ну и как бы никто не мешает вам одну и ту же область памяти сначала использовать как массив интов, а потом как массив байт. Или так например:
    int a = 0x33323130;
    char * c = (char*)&a;
    printf("%c %c %c %c\n", c[0], c[1], c[2], c[3]);

    Пример не использует malloc/calloc для выделения памяти, память выделяется в стеке просто объявлением int a. Тут я попытался показать, что содержимое памяти можно интерпретировать как угодно, главное находится в границах выделенного диапазона.
    Причем языки С/С++/asm это позволяют делать, а другие - нет.
    Пример предполагает, что int имеет размер 32 бита, не для всех платформ это так, но в основном - именно так.
    Кстати этот пример можно использовать для определения порядка байтов платформы: если выведется "1 2 3 4" значит у вас LITTLE ENDIAN, а если "2 1 4 3" - BIG ENDIAN.

    PS: free() - это Си, а delete - C++
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
  • Сравнение html css c языками программирования?

    LenovoId
    Максим @LenovoId
    I want, women not to get sick
    html и css не имеют логики умеет обрабатывать вообще ни каких сценариев кроме тех что в keyframes и то это не сценарии
    в ЯП же есть ... можно описать поведение практически при любом действии
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Что использовать для написания программы для расчета на Python?

    qlkvg
    qlkvg @qlkvg
    python backend developer
    Для визуальной части - tkinter (просто в обучении, быстро, аскетично) или pyqt (несколько сложнее в обучении, богатый функционал, есть крутой визуальный редактор).
    Для записи в файл - проще всего использовать встроенный модуль csv. Для вашей задачи хватит с головой.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как учить C++ программисту который не учился в вузе в данной сфере?

    polar_winter @polar_winter
    Плюс за K&R С programming language.
    Также Таненбаум Архитектура ЭВМ и другие .
    Паттерны проектирования О'Рейли.
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Нужно ли программисту, пищущему на языке высокого уровня, знать детали работы ЭВМ?

    MaxLich @MaxLich
    java developer
    Моё мнение - знать это нужно, но если будете заниматься только ЯП высокого уровня, то нет необходимости глубоко в этом разбираться. В институте эти предметы всё равно даются на базовом уровне, так что в любом случае их надо хорошо изучить и сдать.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
Оценили как «Нравится»
Самые активные сегодня
  • Evgenii
    • 14 ответов
    • 0 вопросов
  • Drno
    • 6 ответов
    • 0 вопросов
  • work_jabir
    Джабир
    • 5 ответов
    • 0 вопросов
  • vabka
    Василий Банников
    • 5 ответов
    • 0 вопросов
  • mayton2019
    • 5 ответов
    • 0 вопросов
  • OoU
    • 5 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации