跳到主要内容
极客日志极客日志
首页博客AI提示词GitHub精选代理工具
搜索
|注册
重置
编程语言 / C

标签

全部标签AIjavaNode.jsNuctPayPPT制作React NativeRNSaaSWeChat大前端算法

分类

全部分类
编程语言
PythonJavaScriptTypeScriptJavaKotlinGo / GolangRustC++CC#F#PHPRubySwiftObjective-CScalaClojureElixirErlangHaskellDartLuaPerlRJuliaMATLAB / OctaveSQLShell / BashPowerShellHTML / CSSZigNimCrystalGroovyVisual Basic .NETSolidity汇编

排序

最新更新最新发布最多浏览最多点赞
Linux 文件 I/O 核心解析:从 open 到重定向
C

Linux 文件 I/O 核心解析:从 open 到重定向

Linux 文件 I/O 是系统编程的基础。本文从内核视角解析文件抽象,详解 open/read/write/close 系统调用及 flags 含义。对比 FILE* 与 iostream 封装层级,阐明文件描述符 fd 的核心作用。深入剖析重定向本质为 fd 绑定,通过实战工具演示可组合性设计。帮助读者建立统一 I/O 模型,掌握底层机制与工程实践选择。

晚风告白发布于 2026/2/26更新于 2026/4/234 浏览0 点赞约 99 分钟阅读
C

PetaLinux 设备树配置深度剖析与驱动集成

PetaLinux 设备树通过 .dts 文件描述硬件拓扑结构,由内核编译为 .dtb 并加载。内核依据 compatible 字段匹配驱动,实现即插即用。管理上应使用 system-user.dtsi 进行增量修改而非直接编辑自动生成文件。驱动加载依赖 of_match_table 机制,调试时可利用 dmesg 和 status 属性排查问题。掌握分层设计与模块化开发能有效提升外设集成效率。

编程诗人发布于 2026/2/26更新于 2026/4/2312 浏览2 点赞约 21 分钟阅读
Linux 文件描述符与重定向实战:从原理到 minishell 实现
C

Linux 文件描述符与重定向实战:从原理到 minishell 实现

文件描述符是 Linux IO 的核心机制,通过非负整数索引进程打开的文件资源。重定向即修改 fd 指向的目标对象,常用 close+open 或 dup2 实现。在 minishell 开发中,需在子进程中解析重定向符号并调用 dup2 修改 fd,随后执行 execvp 替换程序。注意重定向应在子进程进行以避免污染父进程环境,且需注意缓冲区刷新问题。掌握 fd 分配规则与重定向原理,有助于深入理解 Shell 及 Linux 系统编…

山野诗人发布于 2026/2/26更新于 2026/4/232 浏览0 点赞约 25 分钟阅读
C 语言快速排序详解:从基础到非递归实现
C算法

C 语言快速排序详解:从基础到非递归实现

快速排序是 C 语言中常用的高效排序算法。本文详细讲解了其核心思想、Hoare 分区实现方式,并针对最坏情况提出了三数取中和小区间优化策略。此外,还探讨了如何通过堆排序辅助小数据量处理,以及利用栈结构将递归算法转换为非递归实现,以避免栈溢出风险。内容涵盖代码逻辑分析与关键步骤说明。

beaabea发布于 2026/2/26更新于 2026/4/231 浏览0 点赞约 9 分钟阅读
数据结构:顺序表实现通讯录实战
C算法

数据结构:顺序表实现通讯录实战

基于 C 语言顺序表实现通讯录功能,涵盖结构体定义、初始化、销毁、增删改查及展示操作。通过封装 Seqlist 与 Contact 模块,演示了动态内存管理、结构体数组存储及字符串处理等核心知识点,适合数据结构初学者巩固线性表实操。

佛系玩家发布于 2026/2/25更新于 2026/4/2311 浏览2 点赞约 28 分钟阅读
C 语言多线程与并发编程:提高程序执行效率
C算法

C 语言多线程与并发编程:提高程序执行效率

C 语言多线程与并发编程通过利用多核 CPU 优势提升程序执行效率。文章涵盖线程与进程区别、并发与并行概念,详解 pthread 库创建销毁线程、互斥锁条件变量同步机制及生产者消费者模型。同时分析死锁活锁成因并提供避免策略,最后给出数组求和等实战案例,帮助开发者掌握高效并发编程技巧并规避常见坑点。

BackendPro发布于 2026/2/25更新于 2026/4/2312 浏览1 点赞约 30 分钟阅读
Linux 基础 IO 收官:库的构建与使用、进程地址空间及核心知识点
C

Linux 基础 IO 收官:库的构建与使用、进程地址空间及核心知识点

Linux 基础 IO 系列收官篇详解静态库与动态库的构建命令、链接方式及底层差异,剖析进程地址空间中虚拟地址与物理内存的映射关系。补充内存管理(页框、slab 分配器)、IO 数据拷贝流程、函数参数求值顺序等关键细节,并通过习题巩固文件描述符、链接类型及库加载机制等核心概念,帮助读者建立从代码编写到程序运行的完整认知。

t ag发布于 2026/2/25更新于 2026/4/238 浏览0 点赞约 10 分钟阅读
C语言网络编程入门:Socket编程、TCP/IP协议与通信实现
C

C语言网络编程入门:Socket编程、TCP/IP协议与通信实现

C语言网络编程涉及 Socket 接口、TCP/IP 协议分层及客户端服务器通信。内容包括流套接字与数据报套接字区别,TCP 与 UDP 实现代码示例,常见连接发送接收问题排查,以及多线程聊天室实战案例。重点掌握 socket 创建、绑定、监听、连接等核心 API 使用。

月光旅人发布于 2026/2/25更新于 2026/4/233 浏览0 点赞约 30 分钟阅读
Redis 压缩列表、Listpack 及哈希表扩容原理
C算法

Redis 压缩列表、Listpack 及哈希表扩容原理

Redis 压缩列表通过紧凑存储节省内存,但存在连锁更新问题。Redis 引入 Listpack 解决此问题,利用 len 字段替代 prevlen 实现倒序遍历。哈希表扩容采用渐进式策略,使用两个哈希表逐步迁移数据,避免阻塞单线程。读请求在扩容期间会同时检查新旧哈希表,写请求仅写入新表,确保服务高可用。

落日余晖发布于 2026/2/25更新于 2026/4/2312 浏览1 点赞约 5 分钟阅读
C算法

C语言结构体、共用体与链表基础

C 语言结构体用于组合不同类型数据,成员通过点或箭头访问。共用体共享同一内存空间,最新写入覆盖旧值。链表由节点组成,包含数据域和指针域,支持动态分配内存。相比数组,链表插入删除效率高但不支持随机访问。文章涵盖静态与动态链表实现,包括初始化、插入、删除、遍历及销毁操作,演示了 malloc 和 free 的使用。

Eee_123发布于 2026/2/24更新于 2026/4/2310 浏览1 点赞约 14 分钟阅读
进程实践:手动实现 Shell
C

进程实践:手动实现 Shell

通过 C 语言从零实现一个简易 Shell,涵盖命令行提示符定制、输入读取、字符串解析、内建命令(cd/export/echo)及普通命令执行(fork/exec/wait)。重点讲解进程控制、环境变量管理、内存分配及错误处理机制,帮助深入理解 Linux 系统编程核心概念。

BigDataPan发布于 2026/2/24更新于 2026/4/2314 浏览2 点赞约 34 分钟阅读
Linux 文件操作与重定向原理
C

Linux 文件操作与重定向原理

Linux 文件操作核心在于 open、read、write 等系统调用,通过文件描述符 fd 关联进程与文件。库函数如 fopen 是对系统调用的封装。重定向本质是修改文件描述符表的指向,常用 dup2 系统调用实现。Shell 中的 >、>>、< 符号底层对应 O_TRUNC、O_APPEND、O_RDONLY 标志。在自定义 Shell 中需解析命令行并处理重定向逻辑,分离标准输出与错误输出。

随缘发布于 2026/2/24更新于 2026/4/219 浏览2 点赞约 22 分钟阅读
C 语言常用算法与数据结构基础
C算法

C 语言常用算法与数据结构基础

C 语言常用算法与数据结构基础涵盖数组、链表、栈、队列、树和图等结构,以及排序、搜索、递归等算法。内容包含时间空间复杂度分析,通过代码示例演示数组遍历、查找、链表创建、冒泡排序、栈实现及递归计算。同时提供内存泄漏、数组越界等常见错误避坑指南,旨在帮助开发者掌握程序设计基础并提升代码效率。

人间失格发布于 2026/2/23更新于 2026/4/239 浏览1 点赞约 21 分钟阅读
Linux 进程信号的捕捉处理
C

Linux 进程信号的捕捉处理

Linux 进程信号捕捉涉及用户态与内核态切换。通过 sigaction 系统调用设置信号处理函数及屏蔽字。信号处理期间内核自动阻塞当前信号,sa_mask 可额外屏蔽其他信号。信号处理函数需考虑重入问题,避免共享资源竞争导致内存泄漏。volatile 关键字防止编译器优化,确保变量状态在信号中断后能被主循环正确感知。

SparkGeek发布于 2026/2/23更新于 2026/4/2310 浏览1 点赞约 20 分钟阅读
Linux 基础 IO(四):用户缓冲区深度解析
C算法

Linux 基础 IO(四):用户缓冲区深度解析

Linux 系统 IO 涉及用户缓冲区和内核缓冲区。C 库函数如 printf 使用用户缓冲区,write 系统调用直接写入内核。重定向会改变缓冲策略,行缓冲用于终端,全缓冲用于文件。fork 操作会导致未刷新的用户缓冲区被复制,造成数据重复。理解缓冲区刷新机制对调试 IO 问题至关重要。

女王发布于 2026/2/23更新于 2026/4/2310 浏览0 点赞约 15 分钟阅读
Linux 进程等待机制:wait、waitpid 与僵尸进程治理
C

Linux 进程等待机制:wait、waitpid 与僵尸进程治理

Linux 进程等待机制通过 wait 和 waitpid 系统调用实现子进程资源回收及状态获取。重点解析僵尸进程成因、status 参数位图结构及宏的使用,演示非阻塞轮询模式在父进程并发任务中的应用,帮助开发者实现健壮的进程管理。

二进制发布于 2026/2/23更新于 2026/4/231 浏览0 点赞约 11 分钟阅读
嵌入式 Linux 30 天高效学习路线与实操指南
C

嵌入式 Linux 30 天高效学习路线与实操指南

嵌入式 Linux 30 天学习路线涵盖基础命令、系统原理、编程落地及项目实战四个阶段。核心策略为聚焦高频知识与底层原理,坚持实操优先与闭环学习。推荐 Ubuntu 系统及 VMware 环境,配合 VS Code 与交叉编译工具链。学习资源包括经典书籍、在线视频教程及开源项目。注意事项强调系统配置备份、权限操作谨慎、编译错误排查及心态调整,旨在帮助开发者在一个月内掌握独立开发嵌入式应用的能力。

涅槃凤凰发布于 2026/2/22更新于 2026/4/2311 浏览1 点赞约 10 分钟阅读
Linux 父子进程机制解析:fork 函数原理与应用
C

Linux 父子进程机制解析:fork 函数原理与应用

Linux 进程由操作系统内核维护,PID 是唯一标识。fork 系统调用用于创建子进程,父进程获取子进程 PID,子进程返回 0。父子进程共享代码段但拥有独立的虚拟地址空间,数据通过写时拷贝(COW)机制管理。通过返回值区分执行流,实现并发任务处理。深入理解 fork 机制有助于掌握系统编程核心技能及资源管理。

时间旅人发布于 2026/2/22更新于 2026/4/239 浏览0 点赞约 17 分钟阅读
Linux 进程状态详解
C

Linux 进程状态详解

Linux 进程状态主要包括运行(R)、可中断睡眠(S)、不可中断睡眠(D)、暂停(T/t)、僵尸(Z)等。文章解释了操作系统如何通过运行队列管理 CPU 调度,以及内存不足时的挂起机制。重点阐述了 Linux 内核利用 list_head 结构体嵌入 task_struct 实现双向链表,使同一进程节点能同时属于多个数据结构队列。最后通过 task_state_array 展示了具体状态码含义及孤儿进程处理逻辑。

DotNetGuy发布于 2026/2/22更新于 2026/4/239 浏览0 点赞约 6 分钟阅读
C

Linux 信号处理:可重入函数原理与实战规范

Linux 信号处理函数必须使用可重入函数以避免数据错乱或崩溃。可重入函数定义及其与线程安全的区别,分析 strtok、malloc 等不可重入函数的风险场景。提供安全函数清单及编写原则,强调禁用全局变量、动态内存分配,推荐使用 volatile sig_atomic_t 处理标志位,并通过代码示例展示如何构建安全的信号处理逻辑。

PgDevote发布于 2026/2/21更新于 2026/4/2311 浏览1 点赞约 13 分钟阅读
上一页下一页