Ответы пользователя по тегу Трансляторы
  • Какой компилятор C++ выбрать?

    @res2001
    Developer, ex-admin
    У Микрософт есть компилятор отдельно от VS, продукт называется - Build Tools for Visual Studio. Не смотря на то что он "for Visual Studio", но его можно поставить отдельно и собирать проекты.
    На счет того что выбрать - для винды микрософтовский компилятор. Как вариант mingw, но msvc лучше, имхо.
    Для никсов - gcc, clang и проч.
    Ответ написан
    1 комментарий
  • VS 2017, не может найти библиотеку при линковке?

    @res2001
    Developer, ex-admin
    Указать в свойствах проекта для линковки дополнительный путь к каталогу, где лежит библиотека.
    Ответ написан
    2 комментария
  • И снова clang: Почему (при оптимизации) реализация на указателях получилась хуже чем с использованием оператора [ ]?

    @res2001
    Developer, ex-admin
    В первом случае первая итерация цикла выполняется вне цикла (отсюда и больше размер). Во втором варианте все итерации выполняются в цикле.
    Код внутри цикла один и тот же. Скорость исполнения будет одинакова.
    Разница только в том, что первый вариант на несколько байт больше размером.
    Кстати, gcc показывает идентичный код в обоих случаях.

    Предлагаю еще такой вариант:
    int str_cmp1(const char *s, const char *t)
    {
     while (*s == *t++ && *s != '\0')  ++s;
        return *s - *t;
    }
    Ответ написан
    9 комментариев
  • Установка MinGW ― копирование?

    @res2001
    Developer, ex-admin
    Можно.
    Достаточно на новой системе прописать в переменной окружения PATH путь в каталог bin mingw.
    Дополнительно можно настроить переменные: MINGW_HOME и возможно MINGW_ALT_HOME
    Они должны содержать путь в каталог установки MINGW.
    MINGW_ALT_HOME - не обязательна, можно использовать, если вы держите 2 варианта mingw для сборки х32 и х64 приложений. Один (основной) прописываете в MINGW_HOME другой в MINGW_ALT_HOME.

    Посмотрите что добавляет туда родной установщик, чтоб было понятней.

    Я пользуюсь msys2 + mingw, то же легко переносится. Когда-то это делал. Но сейчас пришел к выводу, что это не имеет большого смысла. Сейчас переношу только домашний каталог пользователя msys2, его можно настроить в любое место в файловой системе.
    Для msys2 дополнительно можно настроить переменную MSYS_HOME, она должна содержать путь в каталог usr msys2.

    Эти переменные окружения используют IDE для нахождения установленных экземпляров mingw. Если собирать из командной строки, то достаточно PATH.
    Ответ написан
    Комментировать