C 语言字符指针入门:搞清地址、字符串常量与数组的区别

这篇文章围绕 C 语言里的字符指针展开,重点解释“指针里存的到底是什么”、`const char*` 与字符数组的差别,以及为什么有些字符串地址比较会相等。读完后,你可以判断字符指针何时指向变量、何时指向字符串常量,并理解 `[]` 与指针运算之间的对应关系。

C 语言字符指针入门:搞清地址、字符串常量与数组的区别

深度剖析数据在内存中的存储

这篇文章从数据类型、整数编码到浮点数规则,系统梳理“数据为什么会这样存进内存”。重点保留补码、大小端和 IEEE 754 这三组核心概念,帮助读者判断整数与浮点数在机器中的真实存储方式。

深度剖析数据在内存中的存储

TCP/IP 网络编程:I/O 流分离之后,为什么还要关心半关闭

在 TCP 套接字编程里,把读写流程“分离”出来并不等于天然支持半关闭。本文结合 `fork`、`fdopen`、`dup/dup2` 和 `shutdown` 的配合方式,说明为什么直接对 `FILE*` 调用 `fclose` 会把整个套接字关掉,以及如何通过复制文件描述符正确实现基于标准 I/O 的读写分离。

TCP/IP 网络编程:I/O 流分离之后,为什么还要关心半关闭

Nginx 性能调优有哪些手段

Nginx 性能调优不能只盯着几个参数,而要同时看配置、内核、硬件、缓存和监控。本文按“先改哪里、为什么改、要避开什么坑”的顺序梳理常见优化手段,并保留关键配置项、典型数值和适用场景,方便快速形成可执行的调优清单。

Nginx 性能调优有哪些手段

C语言指针入门:从地址、数组到函数调用一次讲清

这篇文章把 C 语言指针知识按“先理解地址,再区分数组与函数场景,最后避开常见错误”的顺序重写。文中保留原有语法、示例和关键结论,重点解释 `&`、`*`、指针运算、数组指针、函数指针、空指针与野指针,便于读者快速建立整体判断。

C语言指针入门:从地址、数组到函数调用一次讲清

Oracle 21c 中怎么用 ROW_NUMBER() 查询分组最新记录?

在 Oracle 21c 里,想查“每组最新一条记录”,核心不是单独使用 ROW_NUMBER(),而是先按分组键和时间等“新旧字段”做窗口排序,再取编号为 1 的行。本文同时说明它为何不能直接和 GROUP BY 混用、并列记录该换用什么函数,以及索引应如何配合。

Oracle 21c 中怎么用 ROW_NUMBER() 查询分组最新记录?

C 语言自定义数据类型梳理:枚举、结构体、共用体与 typedef

本文系统梳理 C 语言四类常见自定义数据类型:枚举、结构体、共用体和 typedef。重点不只在语法,还补清了默认取值、成员访问、内存对齐、共享存储和别名使用场景,适合用来建立判断:什么时候该提高可读性,什么时候该关注内存布局。

C 语言自定义数据类型梳理:枚举、结构体、共用体与 typedef