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

Нажмите на изображение для увеличения
Название: Статический ИИ-анализ устранение утечек памяти в C с помощью DeepCode.jpg
Просмотров: 225
Размер:	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 25.11.2025 в 02:55
Показов 7852 Комментарии 0
Метки 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
Показов 5093 Комментарии 2

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

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

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

Нажмите на изображение для увеличения
Название: b6b752f5-b840-4727-bdb1-8227160b0fd0.jpg
Просмотров: 302
Размер:	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
Показов 5948 Комментарии 0

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

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

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

Здесь представлены ссылки на утилиты и команды для автоматического форматирования отступов из консоли. Если использовать Far Manager, то консольные команды будут сохранены в подсказчике. Far Manager похож на Total Commander, но можно показывать и скрывать консоль сочетанием клавиш Ctrl+O. Например, достаточно будет ввести команду...
Старый
Рейтинг: 5.00. Голосов: 1.
SSL_accept обязательно оборачивать в неблокирующую обертку!
Запись от Eddy_Em размещена 15.06.2023 в 21:42
Показов 1263 Комментарии 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
Показов 1869 Комментарии 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
Показов 1239 Комментарии 0

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

первая:

отправляем в порт сигнал “:S” о готовности, ждем получения ответа о готовности “:S”
после этого отправляем число ххх, которое передается на ком порт...
Старый
Рейтинг: 5.00. Голосов: 1.
Про кодировки... навеяло
Запись от мама Стифлера размещена 22.09.2021 в 22:48
Показов 9089 Комментарии 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
Показов 4243 Комментарии 2
Метки c, c++, winapi

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

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

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

В современной операционной системе Windows есть области ядра, в которые Microsoft не хотела бы пускать обычных пользователей. Сделано это, естественно, в целях безопасности.
Это могут быть процессы, сервисные службы, и даже Рабочие столы. Немного освежим память для целостности...
Аватар для _lunar_
Старый
Рейтинг: 5.00. Голосов: 1.
Постоянная ссылка на Google Диск для скачивания моих утилит
Запись от _lunar_ размещена 03.03.2021 в 10:55
Показов 9235 Комментарии 0
Метки c, c++, winapi

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

KernelExplorer

Исходный код на GitHub

Скачать с GitHub

ВНИМАНИЕ!!!
В связи с ненормальной политикой Microsoft в отношении...
Аватар для _lunar_
Новые блоги и статьи
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru