标准IO:打开关闭、错误处理 1. 文件打开与关闭的基本概念 打开(Open):占用系统资源(如文件、设备等)。 关闭(Close):释放已占用的资源,避免其他程序无法访问。 在操作系统底层(文件描述符层面),通过 open() 和 close() 实现资源的占用与释放。 在 C 标准库中,使用 FILE* 流指针进行操作,接口 2026-02-27 技术学习 8 八角星
标准IO:缓存机制 1. 标准 IO 与文件 IO 的对比 1.1 核心区别 文件 IO (File I/O): 属于系统调用 (System Call)。 每次操作(如 read, write)都会触发内核态与用户态的切换。 频繁的系统调用会降低效率。 使用 文件描述符 (File Descriptor, FD),是 2026-02-26 技术学习 5 八角星
文件IO:文件定位、权限修改 1. 文件定位接口 lseek 1.1 为什么需要 lseek 在文件读写过程中,文件指针(光标)会随着 read 或 write 操作自动移动。 读后写:读完文件后,指针在末尾,直接写入会追加内容,符合预期。 写后读:写入一行内容后,指针位于写入内容的末尾。如果此时想读取刚才写入的内容,由于指针不 2026-02-25 技术学习 6 八角星
文件IO:读写 Linux 系统编程:文件 I/O 操作详解 (read/write/open) 本笔记基于视频内容整理,并结合 Linux 标准文档(man pages)进行了技术细节的校正与补充。内容涵盖 read、write、open 函数的核心用法、参数详解、返回值处理、文件权限标志以及命令行参数传递的最佳 2026-02-25 技术学习 8 八角星
文件IO:文件描述符、打开与关闭 1. 系统调用与库函数概述 1.1 应用程序与内核的交互 内核(Kernel):操作系统的核心部分,负责管理硬件资源和提供服务。 保护机制:应用程序不能直接访问内核空间或直接进行数据访问、数据后续等操作,必须经过保护。 系统调用(System Call): 内核提供的接口,允许应用程序请求内核服务。 2026-02-25 技术学习 18 八角星
文件基础 1.1.linux系统 Linux的基本思想有两点:第一,一切皆是文件;第二,每个文件都有确定的用途。 其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和 2026-02-21 技术学习 16 八角星
Shell、时间、查看文件相关命令 什么是Shell Linux中的shell就是Linux内核的一个外层保护工具,并负责完成用户与内核之间的交互 内核 内核是操作系统最基本的部分。它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。 Shell的分类 2025-12-11 技术学习 62 八角星
make的使用 -C dir读入指定目录下的Makefile -f file读入当前目录下的file文件作为Makefile -i 忽略所有的命令执行错误 -n 只打印要执行的命令,但不执行这些命令 -s 在执行命令时不显示命令 2025-11-27 技术学习 38 八角星
Makefile条件判断和函数 Makefile的条件判断 ifeq 判断是否相等 ifneq 判断是否不相等 ifdef 判断是否定义过 ifndef 判断是否未定义过 #自动变量 SRC = main.o fun.o CFLAGS = -c - 2025-11-27 技术学习 13 八角星
Makefile用法及变量 Makefile概述 Makefile重要性 会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力 Makefile概述 Makefile 文件描述了整个工程的编译、连接等规则。其中包括:工程中的哪些源文件需要编译以及如何编译、需要创建哪些库文件以及如何创建这些库文件、如何最后 2025-11-26 技术学习 13 八角星
分文件编程 以该项目为例 : https://040216.xyz/archives/cxiang-mu-wu-ren-shou-mai-ji main.c #include "fun.h" int main(int argc, const char *argv[]) { int role; while( 2025-11-20 技术学习 10 八角星
GDB调试 GDB简介 GDB是GNU开源组织发布的一个强大的Linux下的程序调试工具。 一般来说,GDB主要帮助你完成下面四个方面的功能: 启动你的程序,可以按照你的自定义的要求随心所欲的运行程序(按着自己的想法运行)。 可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式) 当程序被停住时 2025-11-20 技术学习 5 八角星
条件编译 GCC编译工具 GCC简介 GCC 原名为 GNU C 语言编译器(GNU C Compiler),只能处理 C 语言。但其很快扩展,变得可处理 C++,后来又扩展为能够支持更多编程语言,如 Fortran、Pascal、Objective -C、Java、Ada、Go 以及各类处理器架构上的汇编语 2025-11-19 技术学习 16 八角星
C项目-无人售卖机 项目说明 无人售卖机项目说明1.0 本项目的主要目的是结合实际生活案例,利用C语言基础语法(包括数据类型、控制语句、数组、指针、函数等),实现下无人售卖机项目。 2025-11-18 技术学习 35 八角星