c语言

码行山野赴时序归途1 小时前
c语言·开发语言·数据结构·算法·leetcode·排序算法
从暴力到最优:三道 C 语言入门题的解法思路做算法题有个挺有意思的规律:题目越简单,越能看出思路的差距。暴力解法往往很快就能写出来,但想出更优雅的解法,可能需要多琢磨一会儿。下面这三道题都是 LeetCode 上的简单题,我把自己第一次做时的思路和后来学到的更好写法整理了一下。
sunoo-2292 小时前
linux·c语言·笔记·vscode·学习
【Linux 系统编程】学习第七天:线程属性 | 互斥锁 | 死锁 | 信号量 核心知识点 + 踩坑实战今天是系统编程学习的第七天,核心围绕多线程同步与通信展开,覆盖线程分离属性、多进程与多线程的优劣对比、互斥锁机制、死锁的产生与规避、信号量的同步 / 互斥用法四大模块。
小雪崩2 小时前
linux·c语言·学习
嵌入式学习 day33:线程进阶之前学的线程需要用 pthread_join() 回收,否则会变成僵尸线程。如果不需要等待线程的返回值,可以把它设为分离状态:线程结束后系统自动回收资源,不用手动 join。
SuperByteMaster3 小时前
c语言
ARM Architecture Procedure Call Standard(ARM架构过程调用标准)AAPCS的核心是对ARM处理器中16个通用寄存器(R0-R15)的用途进行了严格定义。这是你之前最关心的一点,AAPCS的规则非常明确:
神仙别闹7 小时前
c语言·开发语言·sqlite
基于C语言+SQLite 实现(控制台+图形界面)图书管理系统大小: 10.2MB➡️ 资源下载:https://download.csdn.net/download/s1t16/87453187
水饺编程7 小时前
c语言·c++·windows·visual studio
第5章,[Win32 章节] :绘制填充区域上一篇:第5章,[Win32 章节] :绘图模式回到目录下一篇:无对于本节所讲解的知识,有可能,你会需要时不时地参考本专栏的其它文章。真的遇到了需要参考之前的文章的知识点,请你自行查阅。
从零开始的嵌入式之旅8 小时前
linux·c语言·经验分享·笔记·嵌入式硬件
day31第一部分:线程分离属性1. 分离属性概念 线程结束后,系统自动回收线程空间,无需手动调用 pthread_join。
Horn Still Sounds8 小时前
linux·运维·服务器·c语言
Linux系统编程进阶:进程回收、程序替换与多线程并发模型摘要:本文深入剖析Linux环境下进程与线程的高级管理机制。内容涵盖进程资源的阻塞与非阻塞回收(wait/waitpid)、exec函数族的程序替换原理,以及多线程编程的核心要素。重点解析了线程的创建与同步互斥机制(互斥锁、信号量),并针对死锁产生的四个必要条件提出了严谨的规避策略。
xu_wenming16 小时前
c语言·驱动开发·嵌入式硬件·架构
嵌入式软件架构中的6种解耦艺术好的软件架构,如同精密的机械传动,每个齿轮各司其职,更换任意一个而不影响其他。本文通过一个真实的GPS数据采集系统,剖析嵌入式开发中6种经典解耦手法,带你领略"高内聚、低耦合"的设计之美。
DevHub20 小时前
c语言·驱动开发·stm32·单片机·嵌入式硬件·mcu
CANopen 教程:STM32 实现 CANopen 从站,3 个回调替代手写对象字典CAN 物理层只负责把数据帧传出去——标准帧 11 位 ID 加最多 8 字节。至于帧里每个字节的含义,物理层不提供任何约定。接入第三方驱动器时,看到 ID 0x203 第 2 字节是 0x2A,是电流还是转速、单位是什么,只能翻厂商手册。
不灭的黄金瞳1231 天前
c语言·开发语言·数据结构
C语言手写顺序表本人的技术笔记会优先发布在个人站点longyxblg.cn数据结构是计算机存储、组织数据的方式。是指相互之间存在一种或多种特定关系的数据元素合集。数据结构反映数据的内部构成,即数据由哪部分构成,什么方式构成,以及数据元素之间的呈现的结构。
老当益壮梁奶奶1 天前
linux·c语言·c++·笔记·学习
Linux 软件编程学习笔记(六):线程编程入门与实践线程可以理解为“轻量级进程”(Lightweight Process),它是一个任务从创建、调度到消亡的完整过程。与进程类似,线程也有自己的执行流,但线程是操作系统任务调度的最小单元。
水饺编程1 天前
c语言·c++·windows·visual studio
第5章,[Win32 章节] :创建、选择和删除画笔上一篇:第5章,[Win32 章节] :使用现有画笔回到目录下一篇:第5章,[Win32 章节] :填充空隙
小柯博客1 天前
c语言·stm32·单片机·嵌入式硬件·架构·嵌入式·视频编解码
06 · 统一 libcamerasrc 与架构定型:3A、CPU 归因与一次黑屏回归本系列第 6 篇 | 2026-08 | 标签:libcamera、ISP/3A、性能归因、架构重构这一篇是架构的定型篇:为什么最终删掉低延迟的 v4l2src 直采路径、统一走 libcamerasrc;“待机 CPU 60%” 怎么一步步归因到 libcamera IPA 的一个版本差异; face_rec 怎么分两步完成订阅化迁移;以及一次"中途接入黑屏"的回归是怎么发生、 怎么修掉的。
bluesky9612221 天前
c语言·c++·算法
malloc 和 realloc C/C++在 C 语言中,malloc 和 realloc 是用于动态内存管理的两个核心函数,均声明在 <stdlib.h> 头文件中,它们允许程序在运行时从堆(Heap)区申请和调整内存空间
嵌入式小宁1 天前
linux·c语言·嵌入式硬件
C11 原子操作 `atomic_int` 通俗指南atomic_int 是 C11 标准提供的原子整数类型。它保证对变量的"读"和"写"是不可分割的(原子), 且并发访问时不会撕裂、不会乱序。
LuminousCPP1 天前
c语言·数据结构·笔记·排序算法
数据结构-二叉树(三):堆复杂度证明与 Top-K 问题|错位相减推导 + 海量数据内存优化上一篇我们已经完成了二叉堆的完整实现,从完全二叉树的数组存储出发,学习了 HeapAdjustUp、HeapAdjustDown、HeapPush、HeapPop,并进一步实现了建堆与堆排序。
qq_589666052 天前
c语言·c++·c#
C语言、C++与C#的区别详解摘要:C语言、C++和C#是三种名称相似但定位迥异的编程语言。C语言是面向过程的系统级语言,编译为本地机器码,手动管理内存,性能最高;C++在C基础上引入面向对象与泛型,兼顾性能与抽象能力,同样编译为本地机器码并手动管理内存;C#则是微软推出的托管语言,编译为中间语言(IL)并由.NET运行时JIT执行,依赖垃圾回收器管理内存,开发效率最高。在性能上,C和C++在计算密集型任务中通常处于同一量级,C#经JIT预热后可达C/C++的70%到90%左右。选型时应结合项目需求:嵌入式与系统级开发选C,游戏引擎与
昌原的儿子LEO2 天前
linux·服务器·c语言·数据库
Linux进程知识点总结目录核心区别:程序是静态文件;进程是动态执行过程。进程地址空间分为3大段:进程特性:结束当前进程。状态解析宏(传入status变量)