Найти в Дзене
C++

C++

С++ интересные моменты
подборка · 7 материалов
2 месяца назад
C++ - неопределенное поведение при множественном изменении одной и той же переменной в выражении.
В с++ есть некоторое количество случаев когда, не определен точный порядок операций и в зависимости от реализации компилятора или стандарта можно получить разный результат. Рассмотрим простой пример: #include <iostream> int main() { int i = 1; printf("%d, %d\n", i++, i++); return 0; } Вопрос простой, что будет выведено в результате работы программы? printf является функцией, соответственно очередность выполнения выражений в аргументах не определена, можно получить результат: 1, 2 или 2, 1 и даже 1, 1 Этот эксперимент можно повторить на платформе https://godbolt...
2 месяца назад
(GCC12.4) Astra Linux - Как обновить gcc до версии 12.4 - сборка из исходников.
Использование gcc12 полезно при работе с С++20 и библиотеками на нем. Сборка прошла успешно несколько раз на Astra Linux 1.7.7.9 Процесс достаточно длительный и занимает более часа на машине с шестью ядрами. для установки необходимо клонировать репозиторий git clone https://gitflic.ru/project/litvinov_mv/astra-linux-gcc12-4.git и запустить скрипт bash build_gcc_12.4.0.sh Сборка проходила на стандартной системе gcc (AstraLinux 8.3.0-6+b1) 8.3.0 GNU ld (GNU Binutils for AstraLinux) 2.31.1 В результате: будет создана папка по пути: ${HOME}/opt/gcc-12...
6 месяцев назад
Qt - где скачать исходники.
Существует несколько зеркал с которых можно скачать последние версии исходников: https://qt-mirror.dannhauer.de/ https://mirror.yandex.ru/mirrors/qt.io/ Полный список зеркал (просмотр списка через TOR): https://download.qt.io/static/mirrorlist/ Qt 5.15: https://qt-mirror.dannhauer.de/official_releases/qt/5.15/ Актуальная версия: 5.15.16 Qt 6.8: ...
143 читали · 7 месяцев назад
(GCC10) Astra Linux - Как обновить gcc до версии 10 - сборка из исходников?
GCC (GNU Compiler Collection) — это набор компиляторов, разработанный проектом GNU, который предназначен для преобразования исходного кода, написанного на различных языках программирования, в объектный код или непосредственно в исполняемый файл. Изначально GCC был создан для компиляции программ на языке C, но со временем был расширен и теперь поддерживает множество языков, включая: В Astra Linux 1.7 можно проверить версию компилятора $ gcc -v gcc version 8.3.0 (AstraLinux 8.3.0-6+b1) Эта версия...
7 месяцев назад
Astra Linux - Как обновить binutils до версии 2.40?
Binutils (сокращение от binary utilities) — это набор программных утилит, предназначенных для работы с объектными файлами, исполняемыми файлами и библиотеками. Эти инструменты являются важной частью процесса разработки и отладки программного обеспечения. Ниже приведено описание основных утилит из набора binutils и объяснение их необходимости. В Astra Linux 1.7 используется: GNU ld (GNU Binutils for AstraLinux) 2.31.1 чтобы проверить текущие версии можно воспользоваться командами: as --version ld...
112 читали · 7 месяцев назад
Установка Qt5 в Astra Linux.
sudo apt install qt5-default sudo apt install clang cmake gcc g++ git gdb sudo apt install qtdeclarative5-dev qtquickcontrols2-5-dev qttools5-dev sudo apt install qtcreator Для работы dgb необходимо отключить...