Форум программистов, компьютерный форум, киберфорум
C
Войти
Регистрация
Восстановить пароль
Старый
Рейтинг: 5.00. Голосов: 1.
Сравнение датчиков влажности-температуры-давления на шине I2C
Запись от Eddy_Em размещена 14.10.2025 в 16:21. Обновил(-а) Eddy_Em 14.10.2025 в 16:26
Показов 4194 Комментарии 0

Накопилось у меня уже прилично всяких датчиков, вот и решил собрать "стенд", чтобы проверить их. Пока датчики не все: еще с десяток едет с алиэкспресса, но пока опишу в общих чертах суть эксперимента.
Т.к. городить на МК монстра мне совершенно не хочется, я подключил датчики непосредственно к компьютеру через преобразователь на основе CP2112. При этом появляется HID-устройство:
Code
1
[  426.027327] cp2112 0003:10C4:EA90.0006: hidraw5: USB HID v1.01 Device [Silicon Laboratories
...
Windows must die
Старый
Рейтинг: 5.00. Голосов: 1.
Статический ИИ-анализ: устранение утечек памяти в C с помощью DeepCode
Запись от bytestream размещена 28.08.2025 в 20:04
Показов 4299 Комментарии 1

Нажмите на изображение для увеличения
Название: Статический ИИ-анализ устранение утечек памяти в C с помощью DeepCode.jpg
Просмотров: 268
Размер:	244.8 Кб
ID:	11074
Мой первый серьезный проект на C - система обработки финансовых транзакций для одного банка. Мы обрабатывали миллионы транзакций в день, и всё работало как швейцарские часы... первые две недели. А потом наша прекрасная система начала падать. Раз в день. Потом раз в час. В конце концов, я провел 36 часов без сна, гоняясь за утечкой памяти, которая оказалась в одной-единственной строчке кода:

C
1
2
void process_transaction(char* data) {
    char* copy
...
Аватар для bytestream
Старый
Рейтинг: 5.00. Голосов: 1.
Настройка SDL 3.3 для разработки под Android на Си либо на C++
Запись от 8Observer8 размещена 14.08.2025 в 19:44 / Блог 8Observer8. Обновил(-а) 8Observer8 08.12.2025 в 15:11
Показов 8177 Комментарии 1
Метки android, c, c++, opengl, sdl, sdl3, си

Содержание блога
  • Скачайте и установите Android SDK: https://developer.android.com/studio#command-tools
  • Скачайте и установите JDK 17
  • Скачайте этот пример (с SDL3 Renderer API, который показывает квадраты при касании экрана на месте касаний) или этот пример (с OpenGL ES 2.0, который рисует простой треугольник) с GitHub. Распакуйте архив в удобную директорию (например, E:\Projects). Вы можете скачать эти zip-файлы одним кликом:
    • sdlcross.zip (zip - 108 КБ, после распаковки
...
Старый
Рейтинг: 5.00. Голосов: 1.
Вычисляем скорость наименьшими квадратами
Запись от Eddy_Em размещена 01.08.2025 в 08:45
Показов 5185 Комментарии 2

Вожусь с системой управления телескопами на основе контроллеров sidservo (адская дрянь, но что есть, то есть). "Особенностью" контроллера является то, что невозможно получить текущее значение скорости, с которой телескоп двигается по обеим осям. Да и сам ответ на запрос состояния...
Windows must die
Старый
Топ10 библиотек C для квантовых вычислений
Запись от bytestream размещена 12.06.2025 в 20:24
Показов 9811 Комментарии 0

Нажмите на изображение для увеличения
Название: Топ10 библиотек C для квантовых вычислений.jpg
Просмотров: 333
Размер:	211.9 Кб
ID:	10900
Квантовые вычисления - это та область, где теория встречается с практикой на границе наших знаний о физике. Пока большая часть шума вокруг квантовых компьютеров крутится вокруг языков высокого уровня типа Python с его удобными библиотеками, я считаю, что именно C и C++ остаются незаменимыми инструментами для тех, кто действительно хочет выжать максимум производительности из квантовых...
Аватар для bytestream
Старый
Сравнение GCC 14 и Clang 18 компиляторов C для HPC
Запись от bytestream размещена 08.06.2025 в 20:25
Показов 5964 Комментарии 0
Метки c, c++, clang, gcc, highload, hpc, llvm, openmp, simd, си

Нажмите на изображение для увеличения
Название: Сравнение GCC 14 и Clang 18 компиляторов C для HPC.jpg
Просмотров: 339
Размер:	246.2 Кб
ID:	10889
В высокопроизводительных вычислениях (HPC) выбор компилятора - это ход, способный радикально изменить производительность всей системы. Работая последние 15 лет с критическими HPC-системами, я видел случаи, когда замена компилятора буквально "вытягивала" проект...
Аватар для bytestream
Старый
Авто-векторизация в C с GCC 14
Запись от NullReferenced размещена 25.05.2025 в 20:12 / C++ for fun and for life
Показов 3376 Комментарии 0
Метки c, cpu, gcc, simd, vector, си

Нажмите на изображение для увеличения
Название: b6b752f5-b840-4727-bdb1-8227160b0fd0.jpg
Просмотров: 327
Размер:	171.9 Кб
ID:	10847
Современные процессоры давно перестали наращивать тактовую частоту как основной способ увеличения производительности. Вместо этого они обзавелись специализироваными блоками SIMD (Single Instruction, Multiple Data) — механизмами, позволяющими одной инструкцией обрабатывать сразу несколько элементов данных. Звучит заманчиво, но загвоздка всегда была в том, как эффективно использовать эту мощь в обычном коде на языке C.

GCC 14 — это настоящий прорыв...
Аватар для NullReferenced
Старый
Cython и C (СИ) расширения Python для максимальной производительности
Запись от py-thonny размещена 20.05.2025 в 11:23 / pythonic man's blog
Показов 6089 Комментарии 0

Нажмите на изображение для увеличения
Название: cbe1753c-0c61-4a5b-b824-ce4ea2e64653.jpg
Просмотров: 289
Размер:	247.6 Кб
ID:	10828
Python невероятно дружелюбен к начинающим и одновременно мощный для профи. Но стоит лишь заикнуться о высокопроизводительных вычислениях — и энтузиазм быстро улетучивается. Да, Питон медлительнее черепахи, когда дело касается серьезных нагрузок. Почему так происходит? Все дело в механизмах, которые делают Python таким удобным. Интерпретируемая...
Аватар для py-thonny
Старый
Yeti Project / RISC-V Virtual machine
Запись от Max Dark размещена 16.12.2024 в 17:09 / Записки "для себя"
Показов 2246 Комментарии 4
Метки bash, c, risc-v, virtual machine

YetiVM - расширяемый execution environment.

* GitLab - YetiVM
* GitHub - YetiVM
* Тема в "Бетатестировние"

Описание:

В качестве bytecode используется подмножество инструкций из RISC-V ISA.

По сути является библиотекой, которую можно встраивать в Ваше ПО.
Позволяет использовать любой...
Аватар для Max Dark
Диванный эксперт
Старый
Рейтинг: 3.00. Голосов: 2.
Подключение CMake и MinGW к Qt Creator для C и C++ без фреймворка Qt
Запись от 8Observer8 размещена 08.12.2024 в 20:50 / Блог 8Observer8
Показов 6300 Комментарии 0
Метки c, c++, cmake, mingw, qt, qt creator

Содержание блога

Записал видео, как скачать Qt Creator с GitHub без фреймворка Qt и настроить его у помощью MinGW и CMake.

Сколько весит:
  • Архив с Qt Creator 15.0.0 весит 123 MB. Займёт на жёстком 465 MB
  • CMake 3.31.2 - 115 MB
  • MinGW 14.2 - 829 MB

По ссылкам ниже архив с более старой, но меньшей версией MinGW 11.2, которая весит 571 MB в распакованном виде, а не 829 MB, как MinGW 14.2:


...
Старый
Рейтинг: 3.00. Голосов: 2.
Не возвращайте мне ваши ошибки!
Запись от CoderHuligan размещена 08.07.2024 в 14:51
Показов 2775 Комментарии 35
Метки c, си

Размышления по поводу архитектуры обработки ошибок в коде. Конкретно я использую язык Си и его библиотеку. И примеры будут на чистом Си.
Так вот многие функции стандартной библиотеки кроме полезного значения возвращают код ошибки или NULL.
Но возникает вопрос: а почему...
Аватар для CoderHuligan
Старый
Рейтинг: 5.00. Голосов: 2.
Консольные команды для форматирования исходного кода на C, C++, C#, Java, JavaScript, HTML и CSS. Сортировка пакетов на Python
Запись от 8Observer8 размещена 18.02.2024 в 16:35 / Блог 8Observer8. Обновил(-а) 8Observer8 24.12.2025 в 23:38
Показов 2322 Комментарии 4
Метки c, c#, c++, css, html, java, javascript, python, си

Содержание блога

Здесь представлены ссылки на утилиты и команды для автоматического форматирования отступов из консоли. Если использовать Far Manager, то консольные команды будут сохранены в подсказчике. Far Manager похож на Total Commander, но можно показывать и скрывать консоль сочетанием клавиш Ctrl+O. Например, достаточно будет ввести команду...
Старый
Рейтинг: 5.00. Голосов: 1.
SSL_accept обязательно оборачивать в неблокирующую обертку!
Запись от Eddy_Em размещена 15.06.2023 в 21:42
Показов 1336 Комментарии 0
Метки blocking, c, socket, ssl, си

Как-то не парясь работаю с блокирующими сокетами, используя поллинг. А тут — SSL… И вот никаких проблем не замечал, пока не решил проверить: а если я подключусь обычным соединением без рукопожатия. И тут у меня возникла блокировка на SSL_accept. Пришлось таки сокет делать неблокирующим:
C
1
int client = accept4(fd, (struct sockaddr*)&addr, &len, SOCK_NONBLOCK);
А SSL_accept оборачивать в неблокирующую обертку:
C
1
2
static int timeouted_sslaccept(SSL *ssl){
    double t0
...
Windows must die
Старый
Рейтинг: 2.75. Голосов: 4.
Различаем USB-устройства с одинаковыми VID/PID
Запись от Eddy_Em размещена 11.04.2023 в 17:36
Показов 1941 Комментарии 0
Метки c, stm32, usb, железяки, си

В возне с прототипом спектрографа ESPriF, наткнулся на то, что все мои три железяки (контроллер восьми шаговиков, контроллер объектива Canon и контроллер узла калибровки) абсолютно никак в системе не различаются: те же самые VID/PID/Manufacturer (собственно, эмулирую PL2303). Подсказали мне, что можно завести текстовое поле Interface, которое поможет в дальнейшей идентификации. И вот на "заполнялке азотом" я решил поиграться. Заодно лишний раз оптимизировал...
Windows must die
Старый
Рейтинг: 5.00. Голосов: 3.
CCD_Capture
Запись от Eddy_Em размещена 07.04.2023 в 16:04
Показов 1292 Комментарии 0

Исправил кое-какие баги в CCD_Capture, но таки часть еще осталась: иногда подвисает передача по сети (особенно когда окно двигаешь — видимо, потоки между собой начинают "драться"); в standalone режиме сегфолтится при отключении камеры (т.е. где-то я что-то прошляпил); возможно, еще какие-то невыявленные...
Windows must die
Старый
Рейтинг: 5.00. Голосов: 1.
Библиотек много не бывает
Запись от Eddy_Em размещена 29.03.2023 в 14:51
Показов 1054 Комментарии 0

В очередной раз надо "старый новый" автогид делать (практически то же самое, что и на инасановский оптоволоконный спектрограф, но с другим исполнительным механизмом). Решил, что хватит уже одни и те же куски кода туда-сюда таскать, рискуя выдернуть более старую версию с багами. Завел репу improclib и понемногу оформляю код в виде библиотеки. Кстати, с удивлением обнаружил, что у меня уже есть рабочая библиотека для работы с FITS-файлами ☺ Но таки подумал,...
Windows must die
Старый
Рейтинг: 5.00. Голосов: 1.
Доступ к терминальной сессии (Session 0) после обновления 22H2
Запись от _lunar_ размещена 08.02.2023 в 12:40
Показов 7273 Комментарии 0
Метки c, c++, winapi

Дополнительная информация и аттач для скачивания тут

Давно я ничего не писал в блоге, да и ценности в жизни меняются - занимаюсь кодингом всё меньше и меньше, но окончательно бросить всё же не могу (после стольких лет моего увлечения программированием).
А сподвигло меня на новый анализ ядра...
Аватар для _lunar_
Старый
Рейтинг: 5.00. Голосов: 5.
Разбираемся в новом API KLoader. Часть 2: Deep Internal Research
Запись от _lunar_ размещена 04.06.2022 в 01:55
Показов 2043 Комментарии 0
Метки c, c++, winapi

Разбираемся в новом API KLoader. Часть 1: Общие сведения

Из первой части исследования стало известно, что в реестре Windows 11 есть раздел, который не доступен с правами администратора.
И чтобы узнать что в нём находится пришлось повысить права реестра до уровня СИСТЕМА.
Следовательно, такими...
Аватар для _lunar_
Старый
Рейтинг: 4.43. Голосов: 7.
Разбираемся в новом API KLoader. Часть 1: Общие сведения
Запись от _lunar_ размещена 25.05.2022 в 00:56
Показов 2507 Комментарии 0
Метки c, c++, winapi

Во-первых, сразу уточню, что новый API доступен только в Windows 11. В более старых версиях ОС не ищите, его там нет.

Уже и не помню каким образом я наткнулся на ветку реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\KLoader
но результат запроса на открытие меня немного удивил
Нажмите на изображение для увеличения
Название: 1.jpg
Просмотров: 435
Размер:	84.2 Кб
ID:	7549
Отказано в доступе с учётом того, что Реестр по умолчанию открывается с правами администратора с соответствующим запросом UAC.

"Не...
Аватар для _lunar_
Старый
Рейтинг: 5.00. Голосов: 2.
Стек вызовов Windows API
Запись от _lunar_ размещена 11.04.2022 в 14:59
Показов 2341 Комментарии 0
Метки c, c++, winapi

В этой записи я постараюсь простым понятным языком объяснить что такое API в целом, а также его разновидности в зависимости от того, где это API исполняется.

Сперва, предлагаю внимательно посмотреть на скриншот и запомнить последовательность вызовов
(не стал рисовать...
Аватар для _lunar_
Старый
Рейтинг: 3.00. Голосов: 2.
XLL хранение и выполнение VBA кода, или защита VBA кода от просмотра? (C/C++)
Запись от bedvit размещена 10.04.2022 в 17:51
Показов 1627 Комментарии 0
Метки c, c++

Инструмент позволяющий хранить VBA код в XLL и его выполнять.
Часть библиотеки BedvitXLL
Как работает: Сохраняем VBA-код в форме (см.скрин), делимся сохранением .bin с коллегами, заказчиками и т.д. (у них тоже должна стоять .xll). Они смогут использовать весь функционал, но не смогут посмотреть код без пароля.
...
Аватар для bedvit
Старый
Рейтинг: 5.00. Голосов: 2.
Объекты операционной системы. Часть 4: Отладчик уровня ядра WinDbg
Запись от _lunar_ размещена 24.12.2021 в 19:41
Показов 3538 Комментарии 0
Метки c, c++, winapi

Объекты операционной системы. Часть 1: Общие сведения
Объекты операционной системы. Часть 2: Объект ядра
Объекты операционной системы. Часть 3: Уровень целостности

В этой части я решил показать самые интересные, на мой взгляд, возможности ядерного отладчика WinDbg.
Но сначала немного слов о том, как его установить и как им пользоваться....
Аватар для _lunar_
Старый
Рейтинг: 5.00. Голосов: 2.
Объекты операционной системы. Часть 3: Уровень целостности
Запись от _lunar_ размещена 08.12.2021 в 01:51
Показов 4402 Комментарии 3
Метки c, c++, winapi

Объекты операционной системы. Часть 1: Общие сведения
Объекты операционной системы. Часть 2: Объект ядра

Честно говоря, третью часть блога "Объекты операционной системы" я хотел написать совершенно про другое.
В планах было показать работу ядерного отладчика WinDbg, но в процессе подготовки материала...
Аватар для _lunar_
Старый
Рейтинг: 5.00. Голосов: 4.
Объекты операционной системы. Часть 2: Объект ядра
Запись от _lunar_ размещена 16.11.2021 в 12:22
Показов 6581 Комментарии 3
Метки c, c++, winapi

Объекты операционной системы. Часть 1: Общие сведения

Больший интерес из всех трёх групп объектов представляет категория объект ядра.
Рассмотрим более подробно Kernel object.

Каждый объект ядра - это блок памяти, выделенный ядром ОС и доступный только ядру ОС.
Этот блок памяти представляет собой структуру данных, члены которой хранят информацию об объекте (дескриптор...
Аватар для _lunar_
Старый
Рейтинг: 5.00. Голосов: 4.
Объекты операционной системы. Часть 1: Общие сведения
Запись от _lunar_ размещена 12.11.2021 в 00:09
Показов 4562 Комментарии 5
Метки c, c++, winapi

В этом блоге я решил затронуть такую тему, как объекты операционной системы семейства Windows.
Очень часто начинающие программисты, да и обычные пользователи, не могут прийти к пониманию - что есть объект и для чего нужен дескриптор объекта.
Материал даётся с учётом того, читающий данный блог уверенно разбирается в языках программирования C и C++, а также знает основы внутренней архитектуры ОС Windows.

Начнём с определения объекта.
Объект - это структура...
Аватар для _lunar_
Старый
Обмен данными с com-портом
Запись от Olga St-Gor размещена 20.10.2021 в 14:21
Показов 1141 Комментарии 0

Здравствуйте, помогите, пожалуйста, написать две задачи для обмена сообщениями с com-портом на СИ

первая:

отправляем в порт сигнал “:S” о готовности, ждем получения ответа о готовности “:S”
после этого отправляем число ххх, которое передается на ком порт...
Старый
Рейтинг: 5.00. Голосов: 1.
Про кодировки... навеяло
Запись от мама Стифлера размещена 22.09.2021 в 22:48
Показов 9192 Комментарии 25
Метки c

Слегка про кодировки...
Так выглядит код, написанный в кодировке UTF-8. А моя IDE поддерживает только кодировку 1251. Поэтому в редакторе выглядит все очень печально

C
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
 
int main(void)
{
//SetConsoleCP(CP_UTF8); /*необходимо <windows.h>*/
//SetConsoleOutputCP(CP_UTF8); /*необходимо <windows.h>*/
//
//SetConsoleCP(1251); /*необходимо <windows.h>*/
//SetConsoleOutputCP(1251);
...
Аватар для мама Стифлера
из племени тумба-юбма
Старый
Рейтинг: 3.80. Голосов: 5.
Прогулка по Рабочему столу Winlogon. Часть 2: Привет, друг
Запись от _lunar_ размещена 08.06.2021 в 01:52
Показов 4284 Комментарии 2
Метки c, c++, winapi

Прогулка по Рабочему столу Winlogon. Часть 1: UAC

Когда ребята из Microsoft создавали экран приветствия, где пользователь должен ввести логин и пароль,
наверняка они хотели изобрести что-то мощное, что не дало бы не единого шанса на обход пароля и перехода к обычному Рабочему столу.
И всё бы ничего, но один эксплойт они проглядели. Давайте разбираться.

Что же такое экран приветствия? На этот вопрос нам поможет ответить всё тот же KernelExplorer
...
Аватар для _lunar_
Старый
Рейтинг: 3.67. Голосов: 6.
Прогулка по Рабочему столу Winlogon. Часть 1: UAC
Запись от _lunar_ размещена 02.06.2021 в 00:55
Показов 6315 Комментарии 7
Метки c, c++, winapi

В современной операционной системе Windows есть области ядра, в которые Microsoft не хотела бы пускать обычных пользователей. Сделано это, естественно, в целях безопасности.
Это могут быть процессы, сервисные службы, и даже Рабочие столы. Немного освежим память для целостности...
Аватар для _lunar_
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru