C++笔记之IO相关概念详解

发布时间:2026/7/19 1:15:19
C++笔记之IO相关概念详解 C++笔记之IO相关概念详解code review!文章目录C++笔记之IO相关概念详解一、什么是IO二、IO包括哪些操作或场景三、IO与性能的关系四、哪些操作或场景不是IO五、哪些操作不是IO却也和性能强相关总结要点(面试话术)一、什么是IOIO(Input/Output,输入输出)是指程序与外部设备或外部系统之间进行数据交换的操作。其本质特征是:数据需要跨越"用户态程序内存"与"外部实体"之间的边界,通常需要经过操作系统内核,涉及硬件设备(如磁盘、网卡)或内核缓冲区的参与。IO操作的核心特点:需要陷入内核态(系统调用,如read/write/send/recv)速度远慢于CPU/内存操作(磁盘IO约毫秒级,网络IO受延迟影响更大,而CPU指令是纳秒级)通常是异步的、不可预测延迟(依赖外部设备状态、网络状况等)占用的是"等待"资源而非"计算"资源(IO等待期间CPU可以切换去做别的事)二、IO包括哪些操作或场景1. 文件IO文件的读写:fopen/fread/fwrite、ifstream/ofstream、open/read/write/close(POSIX)文件的创建、删除、重命名、stat获取文件属性内存映射文件m