logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

C++IO流讲解

本文详细介绍了C/C++中的IO流系统。首先讲解C语言的基本输入输出函数scanf和printf的使用方法,包括格式控制、宽度设置等技巧,并深入分析了缓冲区的概念及其作用。其次,文章阐述了C++面向对象的IO流体系,包括标准输入输出流对象(cin/cout)、文件流和字符串流的类关系图。重点探讨了流状态管理机制,通过示例代码展示了good()、eof()、fail()和bad()等状态检测方法的应

#c++#开发语言#c语言
C++智能指针

本文分析了传统C++手动内存管理的问题,重点探讨了智能指针的必要性和实现原理。主要观点包括:1)手动内存管理容易引发内存泄漏,特别是面对异常时;2)内存泄漏会导致程序性能下降甚至崩溃;3)RAII(资源获取即初始化)思想是解决内存管理的有效方法,通过对象生命周期自动管理资源;4)C++提供了auto_ptr、unique_ptr等智能指针实现,其中auto_ptr采用所有权转移但存在缺陷,uniq

#c++#开发语言#c语言 +1
Linux网络初始及网络通信基本原理

本文概述了计算机网络的基本概念和分层模型。从网络发展历程引入,阐述了协议的实质(结构化数据格式)和分层设计的优势(模块化、封装性)。重点对比了OSI七层模型(理论标准)和TCP/IP五层模型(实际应用)的分层架构,包括各层核心功能、数据单元和典型协议。此外,介绍了IP地址和MAC地址的作用,以及网络数据传输的封装/解封装流程。文章强调TCP/IP模型因更实用而被广泛采用,同时解释了网络协议栈的&q

#网络#linux#c++ +2
Linux线程互斥与同步

本文介绍了线程互斥与同步的核心概念。线程互斥通过互斥锁保护临界资源,解决数据竞争问题,确保同一时间只有一个线程访问共享数据。互斥锁的实现依赖于硬件原子指令,如swap/exchange。文章还讨论了死锁的产生条件和避免方法,并提出了RAII风格的锁封装方案。线程同步则用于解决资源竞争导致的饥饿问题,通过协调线程执行顺序提高系统效率。文中结合厨房做饭的比喻,生动解释了互斥锁的工作原理及重要性。

#linux#服务器#c++ +2
Linux进程控制核心:创建·等待·终止·替换

/ 返回值:// >0: 父进程,返回值为子进程PID// =0: 子进程// <0: 创建失败为了让父进程方便对子进程进行标识,进而进行管理,所以给父进程子进程的pid,给子进程返回0只是为了确认是否创建成功,出错返回-1//等待最近一个子进程退出//等待pid为pid进程的退出,若pid参数值为-1,则等待任意一个子进程,与wait等效//这两个函数返回值正常返回时为收集到的子进程id,如果调

#linux#运维#服务器
到底了